Skip to content

Releases: kubevirt/containerized-data-importer

v1.61.0

28 Nov 18:52
Compare
Choose a tag to compare

This release follows v1.60.0 and consists of 53 changes, contributed by
18 people, leading to 99 files changed, 4230 insertions(+), 1273 deletions(-).

The source code and selected binaries are available for download at:
https://github.com/kubevirt/containerized-data-importer/releases/tag/v1.61.0.

Pre-built CDI containers are published on Quay.io and can be viewed at:
https://quay.io/repository/kubevirt/cdi-controller/
https://quay.io/repository/kubevirt/cdi-importer/
https://quay.io/repository/kubevirt/cdi-cloner/
https://quay.io/repository/kubevirt/cdi-uploadproxy/
https://quay.io/repository/kubevirt/cdi-apiserver/
https://quay.io/repository/kubevirt/cdi-uploadserver/
https://quay.io/repository/kubevirt/cdi-operator/

Notable changes

Enhancement: Add nbdkit command line parameters to improve reliability of multi-stage VDDK imports
Enhancement: enable cross compile tools for s390x for CDI builder
BugFix: Fix PVC deletion logic in CDI populators
Enhancement: enable s390x native build
BugFix: Bump tar rpm to fix concurrent host-assisted clone tar failure on file change during read
BugFix: Increased size of scratch space to take fs overhead into account
Enhancement: Handle desired storage class changes automatically in cron controller by deleting old storage class sources
Cleanup: Deprecating ObjectTransfer feature
Enhancement: provide s390x support for functional tests
Enhancement: Add s390x nightly build automation
BugFix: Handle PunchHole/AppendZeroWithTruncate failures
Enhancement: Suppress alerting for static provisioning
Cleanup: Document device_ownership_from_security_context=true for containerd v2
BugFix: Warm imports to filesystem volumes would fail size validation on subsequent snapshots
Enhancement: Explicitly declaring containerPort in cdi-apiserver deployment
BugFix: Reduce frequency of SCC management Events
BugFix: Reduce frequency of Route management events
BugFix: Fix uploading for block devices that exceed requested size
Cleanup: Standardize go.mod to not specify patch version
BugFix: nil pointer in handleSnapshot
BugFix: config controller broken with ingresses
Enhancement: Add RWX to AWS EBS io2 storage capabilities
BugFix: VDDK Fix Incomplete transfer of change blocks leads to data corruption
Cleanup: cdi-uploadserver: healthcheck and application use same port

Contributors

18 people contributed to this release:

     8	Alex Kalenyuk <[email protected]>
     5	Alexander Wels <[email protected]>
     5	Michael Henriksen <[email protected]>
     5	Thomas-David Griedel <[email protected]>
     5	cfillekes <[email protected]>
     4	Shelly Kagan <[email protected]>
     4	kubevirt-bot <[email protected]>
     3	Arnon Gilboa <[email protected]>
     3	Nahshon Unna Tsameret <[email protected]>
     2	Andrei Kvapil <[email protected]>
     2	Nestor Acuna Blanco <[email protected]>
     1	Brian Carey <[email protected]>
     1	Felix Matouschek <[email protected]>
     1	Martin Nečas <[email protected]>
     1	Matthew Arnold <[email protected]>
     1	Sebastien Coquelin <[email protected]>
     1	alromeros <[email protected]>
     1	zhlhahaha <[email protected]>

Additional Resources

v1.60.4

21 Nov 19:30
Compare
Choose a tag to compare

v1.57.1

07 Nov 14:38
Compare
Choose a tag to compare

This release follows v1.57.0 and consists of 65 changes, contributed by
11 people, leading to 1239 files changed, 55414 insertions(+), 28387 deletions(-).

The source code and selected binaries are available for download at:
https://github.com/kubevirt/containerized-data-importer/releases/tag/v1.57.1.

Pre-built CDI containers are published on Quay.io and can be viewed at:
https://quay.io/repository/kubevirt/cdi-controller/
https://quay.io/repository/kubevirt/cdi-importer/
https://quay.io/repository/kubevirt/cdi-cloner/
https://quay.io/repository/kubevirt/cdi-uploadproxy/
https://quay.io/repository/kubevirt/cdi-apiserver/
https://quay.io/repository/kubevirt/cdi-uploadserver/
https://quay.io/repository/kubevirt/cdi-operator/

Notable changes

Changelog:
https://github.com/kubevirt/containerized-data-importer/pulls?q=is%3Apr+merged%3A2023-08-16..2024-11-07+base%3Arelease-v1.57+sort%3Aupdated-desc+is%3Aclosed+

Contributors

11 people contributed to this release:

    32	kubevirt-bot <[email protected]>
    10	Arnon Gilboa <[email protected]>
     7	Alex Kalenyuk <[email protected]>
     5	alromeros <[email protected]>
     3	akalenyu <[email protected]>
     2	Matthew Arnold <[email protected]>
     2	Michael Henriksen <[email protected]>
     1	Alexander Wels <[email protected]>
     1	Karel Simon <[email protected]>
     1	Lee Yarwood <[email protected]>
     1	Shelly Kagan <[email protected]>

Additional Resources

v1.60.3

11 Sep 16:26
Compare
Choose a tag to compare

This release follows v1.60.2 and consists of 5 changes, contributed by
2 people, leading to 23 files changed, 131 insertions(+), 30 deletions(-).

The source code and selected binaries are available for download at:
https://github.com/kubevirt/containerized-data-importer/releases/tag/v1.60.3.

Pre-built CDI containers are published on Quay.io and can be viewed at:
https://quay.io/repository/kubevirt/cdi-controller/
https://quay.io/repository/kubevirt/cdi-importer/
https://quay.io/repository/kubevirt/cdi-cloner/
https://quay.io/repository/kubevirt/cdi-uploadproxy/
https://quay.io/repository/kubevirt/cdi-apiserver/
https://quay.io/repository/kubevirt/cdi-uploadserver/
https://quay.io/repository/kubevirt/cdi-operator/

Notable changes

BugFix: Fix PVC deletion logic in CDI populators
BugFix: Increased size of scratch space to take fs overhead into account

Contributors

2 people contributed to this release:

     3	kubevirt-bot <[email protected]>
     2	Alex Kalenyuk <[email protected]>

Additional Resources

v1.60.2

22 Aug 21:11
Compare
Choose a tag to compare

This release follows v1.60.1 and consists of 2 changes, contributed by
2 people, leading to 5 files changed, 80 insertions(+), 20 deletions(-).

The source code and selected binaries are available for download at:
https://github.com/kubevirt/containerized-data-importer/releases/tag/v1.60.2.

Pre-built CDI containers are published on Quay.io and can be viewed at:
https://quay.io/repository/kubevirt/cdi-controller/
https://quay.io/repository/kubevirt/cdi-importer/
https://quay.io/repository/kubevirt/cdi-cloner/
https://quay.io/repository/kubevirt/cdi-uploadproxy/
https://quay.io/repository/kubevirt/cdi-apiserver/
https://quay.io/repository/kubevirt/cdi-uploadserver/
https://quay.io/repository/kubevirt/cdi-operator/

Notable changes

Enhancement: Add nbdkit command line parameters to improve reliability of multi-stage VDDK imports.

Contributors

2 people contributed to this release:

     1	Alex Kalenyuk <[email protected]>
     1	kubevirt-bot <[email protected]>

Additional Resources

v1.59.1

22 Aug 14:57
Compare
Choose a tag to compare

This release follows v1.59.0 and consists of 28 changes, contributed by
7 people, leading to 1046 files changed, 320360 insertions(+), 31006 deletions(-).

The source code and selected binaries are available for download at:
https://github.com/kubevirt/containerized-data-importer/releases/tag/v1.59.1.

Pre-built CDI containers are published on Quay.io and can be viewed at:
https://quay.io/repository/kubevirt/cdi-controller/
https://quay.io/repository/kubevirt/cdi-importer/
https://quay.io/repository/kubevirt/cdi-cloner/
https://quay.io/repository/kubevirt/cdi-uploadproxy/
https://quay.io/repository/kubevirt/cdi-apiserver/
https://quay.io/repository/kubevirt/cdi-uploadserver/
https://quay.io/repository/kubevirt/cdi-operator/

Notable changes

BugFix: Clone from snapshot - fix volume/access mode inferring for temp host assisted source PVC
BugFix: Suppress alerts to reduce noise of dependent ones
Enhancement: New DataVolume Reason field of "ImagePullFailed"
BugFix: Use scratch space when importing non-archived images
BugFix: CDIStorageProfilesIncomplete should not impact operator health
Enhancement: Introduce a controller to handle forklift's volume populators (ovirt, openstack)
BugFix: Properly transfer instancetype labels during containerdisk imports
BugFix: On deletion of the last import DV of DataImportCron with Snapshot source format, re-create an import DV
BugFix: Suppress CDIDefaultStorageClassDegraded alert on SNO
Enhancement: Onboard Infinibox CSI driver
Enhancement: Use direct io (cache=none) with qemu-img convert if target supports it in case of OOMKilled
Enhancement: Add vSphere capabilities, fix DELL ones
BugFix: Allow dataimportcron snap->pvc automatic source switch
Cleanup: VDDK datasource: Increase number of nbdkit lines logged
Enhancement: Add nbdkit command line parameters to improve reliability of multi-stage VDDK imports
Cleanup: apidocs: remove gradle dep (builder)

Contributors

7 people contributed to this release:

    16	kubevirt-bot <[email protected]>
     5	Alex Kalenyuk <[email protected]>
     2	Alexander Wels <[email protected]>
     2	Arnon Gilboa <[email protected]>
     1	Benny Zlotnik <[email protected]>
     1	Vasiliy Ulyanov <[email protected]>
     1	alromeros <[email protected]>

Additional Resources

v1.60.1

18 Aug 12:22
Compare
Choose a tag to compare

This release follows v1.59.0 and consists of 120 changes, contributed by
28 people, leading to 3579 files changed, 609903 insertions(+), 176669 deletions(-).

The source code and selected binaries are available for download at:
https://github.com/kubevirt/containerized-data-importer/releases/tag/v1.60.1.

Pre-built CDI containers are published on Quay.io and can be viewed at:
https://quay.io/repository/kubevirt/cdi-controller/
https://quay.io/repository/kubevirt/cdi-importer/
https://quay.io/repository/kubevirt/cdi-cloner/
https://quay.io/repository/kubevirt/cdi-uploadproxy/
https://quay.io/repository/kubevirt/cdi-apiserver/
https://quay.io/repository/kubevirt/cdi-uploadserver/
https://quay.io/repository/kubevirt/cdi-operator/

Notable changes

Enhancement: Suppress alerts to reduce noise of dependent ones
Enhancement: Remove API dependency on openshift/api
Enhancement: Reject volumes with storage smaller than 1MiB
Enhancement: Mesh annotations now copied from the DV/PVCs to worker pods
Enhancement: Add a DataVolume Running condition, with Reason field of "ImagePullFailed"
Enhancement: Introduce a controller to handle forklift's volume populators (ovirt, openstack)
Enhancement: Provide RPM support for s390x platform
Enhancement: Onboard Infinibox CSI driver
Enhancement: Make upload client/server certs configurable and rotate uploadserver pods
Enhancement: Improve error reporting in upload-proxy
Enhancement: Set LVM based provisioners clone strategy to host assisted by default
Enhancement: Add storagecapabilities to vSphere provisioner
Enhancement: Delete and recreate pending DataImportCron PVCs on default storage class update
Enhancement: Expose the upload-proxy's certificate in the CDI config status
Enhancement: Added KubeSAN CSI plugin storage capabilities so the CDI StorageProfile is automatically populated
Enhancement: Remove datavolume clone source validation from webhook
Enhancement: VDDK datasource: Increase number of nbdkit lines logged
Enhancement: Inject cdi-uploadproxy CA cert into user created routes
Enhancement: Adding storagecapabilities to the longhorn provisioner
Enhancement: Default instance type labels are now added from registry imported PVCs/cloned VolumeSnapshots to DataVolumes
Enhancement: add s390x support for builder image
Enhancement: Properly handle DataVolume preallocation setting for all host assisted (copy) clones
Enhancement: Copy labels from the source of a DataSource (DV/PVC/VolumeSnapshot)

BugFix: Fix resources configuration missing from the configuration of the cdi-containerimage-server initcontainer
BugFix: Clone from snapshot - fix volume/access mode inferring for temp host assisted source PVC
BugFix: Support IPv6 for controller metrics URL
BugFix: Stop handling error phase as "unknown" in clone-populator
BugFix: Improve metrics reporting behavior for upstream rook-ceph deployments, identifying RGW bucket provisioners
BugFix: Use scratch space (and thus qemu-img convert flow) when importing non-archived images to avoid losing sparseness of images
BugFix: Set default clone strategy for trident ONTAP to "snapshot"
BugFix: CDIStorageProfilesIncomplete should not impact operator health
BugFix: Fix VDDK failure with "No new block status data at offset" messages
BugFix: On deletion of the last import DV of DataImportCron with Snapshot source format, re-create an import DV
BugFix: Fix progress metric registration and parsing
BugFix: Use direct io (cache=none) with qemu-img convert if target supports it in case of OOMKilled
BugFix: Properly transfer instancetype labels during containerdisk imports
BugFix: Suppress CDIDefaultStorageClassDegraded alert on SNO
BugFix: Fix wrong storagecapabilities for DELL provisioners
BugFix: Fix progress reporting for http imports
BugFix: Fix race condition when updating warm import checkpoints
BugFix: GKE fix: cdi-apiserver: unencode authorization extra headers
BugFix: Allow dataimportcron snap->pvc automatic source switch

Cleanup: Enable misspell linter and fix spelling errors in comments and strings
Cleanup: Enable unconvert linter and remove all redundant type conversions
Cleanup: Add linters for error handling and fix detected issues
Cleanup: Enable durationcheck linter and fix detected issues
Cleanup: Enable nakedret linter and populate all naked returns
Cleanup: Enable autoformatting linters and format the project
Cleanup: Enable linter dupword to avoid stuttering comments and strings
Cleanup: Parameterize hard coded environment variables in bazel-build-builder.sh
Cleanup: Golang 1.22.3 builder is now used
Cleanup: Align progress metrics names with kubevirt and Prometheus metrics naming conventions
Cleanup: k8s 1.30 libs and controller-runtime 0.18.4
Cleanup: Bump CI to test 1.30/1.29
Cleanup: generate-apidocs: remove gradle dependency

Contributors

28 people contributed to this release:

    27	Edu Gómez Escandell <[email protected]>
    24	Alex Kalenyuk <[email protected]>
    10	Michael Henriksen <[email protected]>
     8	Arnon Gilboa <[email protected]>
     7	alromeros <[email protected]>
     6	kubevirt-bot <[email protected]>
     4	Ido Aharon <[email protected]>
     3	Benny Zlotnik <[email protected]>
     3	Felix Matouschek <[email protected]>
     3	Thomas-David Griedel <[email protected]>
     3	cfillekes <[email protected]>
     3	rwmjones <[email protected]>
     2	Alexander Wels <[email protected]>
     2	Assaf Admi <[email protected]>
     2	Shelly Kagan <[email protected]>
     1	Ben Coxford <[email protected]>
     1	Edu Gómez Escandell <[email protected]>
     1	Ian Bishop <[email protected]>
     1	James Harmison <[email protected]>
     1	Lion <[email protected]>
     1	Mark D <[email protected]>
     1	Matthew Arnold <[email protected]>
     1	Nahshon Unna Tsameret <[email protected]>
     1	Stefan Hajnoczi <[email protected]>
     1	Vasiliy Ulyanov <[email protected]>
     1	cccsss01 <[email protected]>
     1	dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
     1	halfcrazy <[email protected]>

Additional Resources

v1.59.0

01 Apr 11:04
Compare
Choose a tag to compare

This release follows v1.58.3 and consists of 90 changes, contributed by
25 people, leading to 2425 files changed, 184387 insertions(+), 101396 deletions(-).

The source code and selected binaries are available for download at:
https://github.com/kubevirt/containerized-data-importer/releases/tag/v1.59.0.

Pre-built CDI containers are published on Quay.io and can be viewed at:
https://quay.io/repository/kubevirt/cdi-controller/
https://quay.io/repository/kubevirt/cdi-importer/
https://quay.io/repository/kubevirt/cdi-cloner/
https://quay.io/repository/kubevirt/cdi-uploadproxy/
https://quay.io/repository/kubevirt/cdi-apiserver/
https://quay.io/repository/kubevirt/cdi-uploadserver/
https://quay.io/repository/kubevirt/cdi-operator/

Notable changes

Enhancement: Run a subset of functional tests in parallel
Enhancement: Added ability to specify replicas for infra structure pods
Enhancement: Add Prometheus alerts CDINoDefaultStorageClass and CDIDefaultStorageClassDegraded; add informative labels to existing alerts
Enhancement: cdi.kubevirt.io/garbageCollected added to PVCs when DataVolumes are garbage collected
Enhancement: DataVolume supports PVC adoption via DataVolumeClaimAdoption feature gate and cdi.kubevirt.io/allowClaimAdoption annotation on PVC
Enhancement: k8s 1.28 dependencies bump
Enhancement: Added option customizeComponents
Enhancement: ReadWriteOncePod is now allowed to use with CDI DataVolumes
Enhancement: Add PVC spec mutating webhook rendering based on StorageProfiles
Enhancement: Check for cdi.kubevirt.io/allowClaimAdoption on DataVolume rather than PVC
Enhancement: Get all no-provisioner storage capabilities from PVs
Enhancement: Make importer datasource communication explicit
Enhancement: Registry imports can now set PVC labels derived from env vars on containerdisks
Enhancement: add forklift populators apps to cdi-importer image

BugFix: Fix Trident provisioner key for using csi-clone
BugFix: Cephfs to Block cloning is creating empty block device
BugFix: Add Trident RWO Filesystem capability
BugFix: Fix DataImportCron PVC timestamping for garbage collection
BugFix: Fix DataImportCron import DataVolume creation when last import is not found
BugFix: StorageProfile ClaimPropertySets validation
BugFix: Change CDI webhook failure policy to Ignore
BugFix: Allow Deployed CDI to get out of Error Phase
BugFix: Added the k8s.io/minikube-hostpath storage provider to the list of known storage providers
BugFix: Watch DataImportCron-orphan cronjobs and cleanup them
BugFix: Avoid race condition during importer termination
BugFix: ns admin cannot create multiple user-facing CDI resources
BugFix: Avoid XSS vulnerability in Upload proxy
BugFix: cdi.kubevirt.io/allowClaimAdoption annotation broken
BugFix: Add HPE RWX/Block capability

Cleanup: When building CDI builder, use of podman fails to report image digest
Cleanup: Refactor monitoring code
Cleanup: Remove deprecated insecure registries config map from a CDI install
Cleanup: Refactor recording-rules and alerts code
Cleanup: Replace cron expression golang library
Cleanup: Improve handling of unpopulated capacity field in clone populator
Cleanup: Switch to using maintained non-archived go-jose

Contributors

25 people contributed to this release:

    22	Alex Kalenyuk <[email protected]>
    15	Arnon Gilboa <[email protected]>
     9	alromeros <[email protected]>
     7	Michael Henriksen <[email protected]>
     7	kubevirt-bot <[email protected]>
     4	akalenyu <[email protected]>
     3	Felix Matouschek <[email protected]>
     2	Aviv Litman <[email protected]>
     2	Benny Zlotnik <[email protected]>
     2	Denis Ollier <[email protected]>
     2	Shelly Kagan <[email protected]>
     2	cfillekes <[email protected]>
     1	Alexander Wels <[email protected]>
     1	Ben Coxford <[email protected]>
     1	Felix Matouschek <[email protected]>
     1	Ivan Mikheykin <[email protected]>
     1	Karel Simon <[email protected]>
     1	Longchuanzheng <[email protected]>
     1	Pris Nasrat <[email protected]>
     1	Shirly Radco <[email protected]>
     1	Stefan Hajnoczi <[email protected]>
     1	Yaroslav Borbat <[email protected]>
     1	caohuilong <[email protected]>
     1	dalia-frank <[email protected]>
     1	kgoldbla <[email protected]>

Additional Resources

v1.58.3

21 Mar 19:16
Compare
Choose a tag to compare

This release follows v1.58.2 and consists of 2 changes, contributed by
2 people, leading to 9 files changed, 135 insertions(+), 11 deletions(-).

The source code and selected binaries are available for download at:
https://github.com/kubevirt/containerized-data-importer/releases/tag/v1.58.3.

Pre-built CDI containers are published on Quay.io and can be viewed at:
https://quay.io/repository/kubevirt/cdi-controller/
https://quay.io/repository/kubevirt/cdi-importer/
https://quay.io/repository/kubevirt/cdi-cloner/
https://quay.io/repository/kubevirt/cdi-uploadproxy/
https://quay.io/repository/kubevirt/cdi-apiserver/
https://quay.io/repository/kubevirt/cdi-uploadserver/
https://quay.io/repository/kubevirt/cdi-operator/

Notable changes

BugFix: CNV-39618 - cdi.kubevirt.io/allowClaimAdoption annotation broken

Contributors

2 people contributed to this release:

     1	Alex Kalenyuk <[email protected]>
     1	Michael Henriksen <[email protected]>

Additional Resources

v1.58.2

19 Mar 14:21
Compare
Choose a tag to compare

This release follows v1.58.1 and consists of 9 changes, contributed by
4 people, leading to 48 files changed, 1169 insertions(+), 155 deletions(-).

The source code and selected binaries are available for download at:
https://github.com/kubevirt/containerized-data-importer/releases/tag/v1.58.2.

Pre-built CDI containers are published on Quay.io and can be viewed at:
https://quay.io/repository/kubevirt/cdi-controller/
https://quay.io/repository/kubevirt/cdi-importer/
https://quay.io/repository/kubevirt/cdi-cloner/
https://quay.io/repository/kubevirt/cdi-uploadproxy/
https://quay.io/repository/kubevirt/cdi-apiserver/
https://quay.io/repository/kubevirt/cdi-uploadserver/
https://quay.io/repository/kubevirt/cdi-operator/

Notable changes

Cleanup: Adapt test suite for Filesystem only advanced storage
BugFix: StorageProfile ClaimPropertySets validation
BugFix: Fix DataImportCron import DataVolume creation when last import is not found
BugFix: Watch DataImportCron-orphan cronjobs and cleanup them
Enhancement: cdi.kubevirt.io/garbageCollected added to PVCs when DataVolumes are garbage collected
Enhancement: DataVolume supports PVC adoption via DataVolumeClaimAdoption feature gate and cdi.kubevirt.io/allowClaimAdoption annotation on PVC
BugFix: Change CDI webhook failure policy to Ignore
BugFix: Allow Deployed CDI to get out of Error Phase

Contributors

4 people contributed to this release:

     3	Arnon Gilboa <[email protected]>
     3	kubevirt-bot <[email protected]>
     2	Michael Henriksen <[email protected]>
     1	Alex Kalenyuk <[email protected]>

Additional Resources