As a user, I want to specify a registry source to pre-populate my PV with a VM disk image.
* Using skopeo[1] cli to copy image from docker registry.
* Extracting image layers (tar files) into data folder.
* Cleaning up .wh. files and remove corresponding files.
* Supporting docker registries such as: docker hub, quay, etc.
[1] https://github.com/containers/skopeo
Change-Id: Ib4e20bb7be842ebaabeb925202402791827edfd3
Signed-off-by: Daniel Erez <derez@redhat.com>
Co-authored-by: Fred Rolland <frolland@redhat.com>
This patch adds the ability to import and extract an archived content
from a tar file directly onto the target PVC.
That is, a tar file is expanded while keeping file ownership,
permissions, and tree structure identical to the source.
Signed-off-by: Idan Shaby <ishaby@redhat.com>
Combined code from PR#489 and PR#490 by
@gites and
@danielerez
Added some tests and rebased on current master.
Signed-off-by: Alexander Wels <awels@redhat.com>
Fixed a couple of typos in common.go file.
```release-note
NONE
```
Change-Id: I88e911ef85879f32dcd8f8685dc7b71495cd50fe
Signed-off-by: Daniel Erez <derez@redhat.com>
This change just updates the common package to pass golint. Of course
that has some reaching implications into other packages with renaming of
constants.
I've intentionally kept this patch set to the bare minimum for the lint
test, I do think that we should put some effort into our use of
constants (especially those in common.go) in the future.
Ideally we'd declare constants where they're used, and we wouldn't
export them if they don't need to be. There are some in here that
are only used in one or two packages, and that can be cleaned up pretty
easily however it's likely that there might be plans to use them
elsewhere in the future.
- Updated controller to use ENTRYPOINT (no cmd) instead of /bin/sh
- Updated Dockerfile to set path to /usr/bin/cloner_startup.sh instead of /tmp
- Updated Dockerfile to use ENTRYPOINT.
Fixed issue #374
Signed-off-by: Alexander Wels <awels@redhat.com>
Adds go templated controller manifest
Adds make targets for template generation
Removes hard coded version values
Enables template generation and publishing in CI
Make CDI selector label a global constant
Parameterize selectorlabel
Handled nil selector case
Handel NewController error in testing, use constant importer tag
Changed informer factory back to un-filtered, fixed nil ptr error
removed labels, to be handled in a separate pr
To accomodate testing, NewController takes a pre-created Informer, not a factory
Add global constant for default resync
fix makefile bug
fix bug in deployent manifest