containerized-data-importer/pkg/controller
Arnon Gilboa addf25b4f9
Support registry import using node docker cache (#1913)
* Support registry import using node docker cache

The new CRI (container runtime interface) importer pod is created with three containers and a shared emptyDir volume:
-Init container: copies static http server binary to empty dir
-Server container: container image container configured to run the http binary and serve up the image file in /data
-Client container: import.sh uses cdi-import to import from server container, and writes "done" file on emptydir
-Server container sees "done" file and exits

Thanks mhenriks for the PoC!

Done:
-added ImportMethod to DataVolumeSourceRegistry (DataVolume.Spec.Source.Registry, DataImportCron.Spec.Source.Registry).
Import method can be "skopeo" (default), or "cri" for container runtime interface based import
-added cdi-containerimage-server & import.sh to the cdi-importer container

ToDo:
-utests and func tests
-doc

Signed-off-by: Arnon Gilboa <agilboa@redhat.com>

* Add tests, fix CR comments

Signed-off-by: Arnon Gilboa <agilboa@redhat.com>

* CR fixes

Signed-off-by: Arnon Gilboa <agilboa@redhat.com>

* Use deployment docker prefix and tag in func tests

Signed-off-by: Arnon Gilboa <agilboa@redhat.com>

* Add OpenShift ImageStreams import support

Signed-off-by: Arnon Gilboa <agilboa@redhat.com>

* Add importer pod lookup annotation for image streams

Signed-off-by: Arnon Gilboa <agilboa@redhat.com>

* Add pullMethod and imageStream doc

Signed-off-by: Arnon Gilboa <agilboa@redhat.com>
2021-09-20 22:05:36 +02:00
..
transfer Add relationship labels (#1864) 2021-07-28 20:05:24 +02:00
BUILD.bazel Switch deprecated extensions/v1beta1 Ingress (#1826) 2021-06-08 19:33:31 +02:00
clone-controller_test.go Add long term token to pvcs when host assisted cloning cross namespaces (#1922) 2021-09-17 01:24:00 +02:00
clone-controller.go Add long term token to pvcs when host assisted cloning cross namespaces (#1922) 2021-09-17 01:24:00 +02:00
config-controller_test.go Add relationship labels (#1864) 2021-07-28 20:05:24 +02:00
config-controller.go Add relationship labels (#1864) 2021-07-28 20:05:24 +02:00
controller_suite_test.go Stop Using Deprecated Packages (#1548) 2020-12-24 07:08:50 +01:00
datavolume-conditions_test.go Add "AwaitingVDDK" back to condition reason. (#1816) 2021-06-22 21:11:40 +02:00
datavolume-conditions.go Add "AwaitingVDDK" back to condition reason. (#1816) 2021-06-22 21:11:40 +02:00
datavolume-controller_test.go Add long term token to pvcs when host assisted cloning cross namespaces (#1922) 2021-09-17 01:24:00 +02:00
datavolume-controller.go Support registry import using node docker cache (#1913) 2021-09-20 22:05:36 +02:00
import-controller_test.go Support registry import using node docker cache (#1913) 2021-09-20 22:05:36 +02:00
import-controller.go Support registry import using node docker cache (#1913) 2021-09-20 22:05:36 +02:00
runtime-util.go Allow specifying nodeSelector, affinity and tolerations for CDI pods (#1346) 2020-09-03 22:13:18 +02:00
smart-clone-controller_test.go Add relationship labels (#1864) 2021-07-28 20:05:24 +02:00
smart-clone-controller.go CSI Volume clone (#1824) 2021-08-05 14:01:48 +02:00
storageprofile-controller.go Add relationship labels (#1864) 2021-07-28 20:05:24 +02:00
upload-controller_test.go Add relationship labels (#1864) 2021-07-28 20:05:24 +02:00
upload-controller.go Add relationship labels (#1864) 2021-07-28 20:05:24 +02:00
util_test.go Preferred Clone strategy selection (#1846) 2021-07-03 01:53:14 +02:00
util.go Add long term token to pvcs when host assisted cloning cross namespaces (#1922) 2021-09-17 01:24:00 +02:00