Skip to content

Kubevirt datamover e2e#2174

Open
weshayutin wants to merge 17 commits intoopenshift:oadp-1.6from
weshayutin:kubevirt-datamover-e2e
Open

Kubevirt datamover e2e#2174
weshayutin wants to merge 17 commits intoopenshift:oadp-1.6from
weshayutin:kubevirt-datamover-e2e

Conversation

@weshayutin
Copy link
Copy Markdown
Contributor

Why the changes were made

Need to start dev testing kubevirt-datamover in CI

TODO -

  • test more
  • ensure the vm is fully running ( cloud-init done ) before the backup is taken.

dataupload

oc get datauploads.velero.io du-cirros-test-7f756ed1-3dec-11f1-a92c-76dd1c76b7f2-cirros-test-8e5eb8b4  -o yaml
apiVersion: velero.io/v2alpha1
kind: DataUpload
metadata:
  annotations:
    kubevirt-datamover.io/bsl-validated: "true"
    kubevirt-datamover.io/operation-id: cirros-test-7f756ed1-3dec-11f1-a92c-76dd1c76b7f2-cirros-test-cirros-test-4584b859
    kubevirt-datamover.io/vm-name: cirros-test
    kubevirt-datamover.io/vm-namespace: cirros-test
    kubevirt-datamover.io/vmbt-name: vmbt-cirros-test-r8btr
  creationTimestamp: "2026-04-22T01:43:22Z"
  generation: 5
  labels:
    velero.io/backup-name: cirros-test-7f756ed1-3dec-11f1-a92c-76dd1c76b7f2
  name: du-cirros-test-7f756ed1-3dec-11f1-a92c-76dd1c76b7f2-cirros-test-8e5eb8b4
  namespace: openshift-adp
  ownerReferences:
  - apiVersion: velero.io/v1
    kind: Backup
    name: cirros-test-7f756ed1-3dec-11f1-a92c-76dd1c76b7f2
    uid: 61ca180d-9e60-416b-96d1-7cb02f3fdcc9
  resourceVersion: "1754342"
  uid: 3f6eed81-2b80-41f2-955d-523729e29170
spec:
  backupStorageLocation: ts-velero-test-1
  csiSnapshot: null
  datamover: kubevirt
  operationTimeout: 4h0m0s
  snapshotType: CSI
  sourceNamespace: cirros-test
  sourcePVC: cirros-test-disk
status:
  message: Data upload completed
  phase: Completed
  progress: {}
  • backup CR * note no CSI
 Name:         cirros-test-7f756ed1-3dec-11f1-a92c-76dd1c76b7f2
  Namespace:    openshift-adp
  Labels:       velero.io/storage-location=ts-velero-test-1
  Annotations:  velero.io/resource-timeout=10m0s
                velero.io/source-cluster-k8s-gitversion=v1.35.2
                velero.io/source-cluster-k8s-major-version=1
                velero.io/source-cluster-k8s-minor-version=35

  Phase:  Completed

  Resource policies:
    Type:  ConfigMap
    Name:  kubevirt-volume-policy


  Namespaces:
    Included:  cirros-test
    Excluded:  <none>

  Resources:
    Included cluster-scoped:    <none>
    Excluded cluster-scoped:    volumesnapshotcontents.snapshot.storage.k8s.io
    Included namespace-scoped:  *
    Excluded namespace-scoped:  volumesnapshots.snapshot.storage.k8s.io

  Label selector:  <none>

  Or label selector:  <none>

  Storage Location:  ts-velero-test-1

  Velero-Native Snapshot PVs:    auto
  File System Backup (Default):  false
  Snapshot Move Data:            true
  Data Mover:                    velero

  TTL:  720h0m0s

  CSISnapshotTimeout:    10m0s
  ItemOperationTimeout:  4h0m0s

  Hooks:  <none>

  Backup Format Version:  1.1.0

  Started:    2026-04-21 19:43:19 -0600 MDT
  Completed:  2026-04-21 19:44:26 -0600 MDT

  Expiration:  2026-05-21 19:43:19 -0600 MDT

  Total items to be backed up:  113
  Items backed up:              113

  Backup Item Operations:
    Operation for virtualmachines.kubevirt.io cirros-test/cirros-test:
      Backup Item Action Plugin:  kubevirt.io/01-vm-datamover-backup-plugin
      Operation ID:               cirros-test-7f756ed1-3dec-11f1-a92c-76dd1c76b7f2-cirros-test-cirros-test-4584b859
      Phase:                      Completed
      Progress description:       Backup completed successfully
      Created:                    2026-04-21 19:43:22 -0600 MDT
      Started:                    2026-04-21 19:44:24 -0600 MDT
      Updated:                    2026-04-21 19:44:24 -0600 MDT
  Resource List:
    apiextensions.k8s.io/v1/CustomResourceDefinition:
      - datavolumes.cdi.kubevirt.io
      - reclaimspacecronjobs.csiaddons.openshift.io
      - virtualmachineinstances.kubevirt.io
      - virtualmachines.kubevirt.io
    apps/v1/ControllerRevision:
      - cirros-test/revision-start-vm-b5c606e5-a8bc-48ae-a4ee-a5ee35b7814d-3
    authorization.openshift.io/v1/RoleBinding:
      - cirros-test/system:deployers
      - cirros-test/system:image-builders
      - cirros-test/system:image-pullers
    cdi.kubevirt.io/v1beta1/DataVolume:
      - cirros-test/cirros-test-disk
    csiaddons.openshift.io/v1alpha1/ReclaimSpaceCronJob:
      - cirros-test/cirros-test-disk-reclaimspace
      - cirros-test/persistent-state-for-cirros-test-nm5nd-reclaimspace
    kubevirt.io/v1/VirtualMachine:
      - cirros-test/cirros-test
    kubevirt.io/v1/VirtualMachineInstance:
      - cirros-test/cirros-test
    rbac.authorization.k8s.io/v1/RoleBinding:
      - cirros-test/system:deployers
      - cirros-test/system:image-builders
      - cirros-test/system:image-pullers
    security.openshift.io/v1/SecurityContextConstraints:
      - kubevirt-controller
    v1/ConfigMap:
      - cirros-test/kube-root-ca.crt
      - cirros-test/openshift-service-ca.crt
    v1/Event:
      - cirros-test/cirros-test-disk.18a88a524284eded
      - cirros-test/cirros-test-disk.18a88a52428732a0
      - cirros-test/cirros-test-disk.18a88a5242ccfaf2
      - cirros-test/cirros-test-disk.18a88a5242cd536b
      - cirros-test/cirros-test-disk.18a88a5242f3bf99
      - cirros-test/cirros-test-disk.18a88a5243522e8f
      - cirros-test/cirros-test-disk.18a88a53748dca31
      - cirros-test/cirros-test-disk.18a88a55cd3f3ea0
      - cirros-test/cirros-test-disk.18a88a55d6f2db0b
      - cirros-test/cirros-test-disk.18a88a55eeeed629
      - cirros-test/cirros-test-disk.18a88a5656c2fdc1
      - cirros-test/cirros-test-disk.18a88a56d05f5fde
      - cirros-test/cirros-test-disk.18a88a56f1faba10
      - cirros-test/cirros-test-disk.18a88a56f2064db8
      - cirros-test/cirros-test-disk.18a88a56f524678b
      - cirros-test/cirros-test-disk.18a88a56fe8b13c7
      - cirros-test/cirros-test-disk.18a88a5709e4ac0d
      - cirros-test/cirros-test-disk.18a88a584439d7da
      - cirros-test/cirros-test.18a88a523eabcd18
      - cirros-test/cirros-test.18a88a56f41d2073
      - cirros-test/cirros-test.18a88a58034ab265
      - cirros-test/cirros-test.18a88a5b04dbaa37
      - cirros-test/cirros-test.18a88a5b053aedc2
      - cirros-test/cirros-test.18a88a5b093ee8e7
      - cirros-test/cirros-test.18a88a5b9966e60a
      - cirros-test/cirros-test.18a88a5b9a3d7fc0
      - cirros-test/cirros-test.18a88a5ba6e77bdb
      - cirros-test/cirros-test.18a88a5ba74a1c1e
      - cirros-test/cirros-test.18a88a5baa11d7e1
      - cirros-test/cirros-test.18a88a5dfa23c811
      - cirros-test/cirros-test.18a88a5fe784f0b4
      - cirros-test/cirros-test.18a88a5fe7e1bf96
      - cirros-test/cirros-test.18a88a5feb1ebd54
      - cirros-test/importer-prime-bbe9d68d-0f8a-4b82-a0ce-47be533a3655.18a88a52459fb691
      - cirros-test/importer-prime-bbe9d68d-0f8a-4b82-a0ce-47be533a3655.18a88a5247c69727
      - cirros-test/importer-prime-bbe9d68d-0f8a-4b82-a0ce-47be533a3655.18a88a53476ee76b
      - cirros-test/importer-prime-bbe9d68d-0f8a-4b82-a0ce-47be533a3655.18a88a53cf068c74
      - cirros-test/importer-prime-bbe9d68d-0f8a-4b82-a0ce-47be533a3655.18a88a551d4cf648
      - cirros-test/importer-prime-bbe9d68d-0f8a-4b82-a0ce-47be533a3655.18a88a551d4df4ac
      - cirros-test/importer-prime-bbe9d68d-0f8a-4b82-a0ce-47be533a3655.18a88a553ab1a246
      - cirros-test/importer-prime-bbe9d68d-0f8a-4b82-a0ce-47be533a3655.18a88a553df15361
      - cirros-test/importer-prime-bbe9d68d-0f8a-4b82-a0ce-47be533a3655.18a88a5543d0b82f
      - cirros-test/importer-prime-bbe9d68d-0f8a-4b82-a0ce-47be533a3655.18a88a5544b7937d
      - cirros-test/importer-prime-bbe9d68d-0f8a-4b82-a0ce-47be533a3655.18a88a557c1ec363
      - cirros-test/importer-prime-bbe9d68d-0f8a-4b82-a0ce-47be533a3655.18a88a55835ad671
      - cirros-test/importer-prime-bbe9d68d-0f8a-4b82-a0ce-47be533a3655.18a88a55840520ca
      - cirros-test/importer-prime-bbe9d68d-0f8a-4b82-a0ce-47be533a3655.18a88a558411746e
      - cirros-test/importer-prime-bbe9d68d-0f8a-4b82-a0ce-47be533a3655.18a88a558beb44f9
      - cirros-test/importer-prime-bbe9d68d-0f8a-4b82-a0ce-47be533a3655.18a88a558cfecfce
      - cirros-test/persistent-state-for-cirros-test-nm5nd.18a88a56f9343f2f
      - cirros-test/persistent-state-for-cirros-test-nm5nd.18a88a56f948d048
      - cirros-test/persistent-state-for-cirros-test-nm5nd.18a88a57817500ae
      - cirros-test/prime-bbe9d68d-0f8a-4b82-a0ce-47be533a3655.18a88a5243412a7e
      - cirros-test/prime-bbe9d68d-0f8a-4b82-a0ce-47be533a3655.18a88a5243567fdd
      - cirros-test/prime-bbe9d68d-0f8a-4b82-a0ce-47be533a3655.18a88a53462ac87a
      - cirros-test/prime-bbe9d68d-0f8a-4b82-a0ce-47be533a3655.18a88a56cab64458
      - cirros-test/prime-bbe9d68d-0f8a-4b82-a0ce-47be533a3655.18a88a5842d72632
      - cirros-test/virt-launcher-cirros-test-b92b9.18a88a5803e78d0f
      - cirros-test/virt-launcher-cirros-test-b92b9.18a88a5808e8a79c
      - cirros-test/virt-launcher-cirros-test-b92b9.18a88a5828e04bc5
      - cirros-test/virt-launcher-cirros-test-b92b9.18a88a593c2e4a98
      - cirros-test/virt-launcher-cirros-test-b92b9.18a88a5a137e19d4
      - cirros-test/virt-launcher-cirros-test-b92b9.18a88a5a137e6ef7
      - cirros-test/virt-launcher-cirros-test-b92b9.18a88a5a2954c81d
      - cirros-test/virt-launcher-cirros-test-b92b9.18a88a5a2b5389c6
      - cirros-test/virt-launcher-cirros-test-b92b9.18a88a5a55c9e801
      - cirros-test/virt-launcher-cirros-test-b92b9.18a88a5a5669a8f1
      - cirros-test/virt-launcher-cirros-test-b92b9.18a88a5a72193168
      - cirros-test/virt-launcher-cirros-test-b92b9.18a88a5a7e7b13c6
      - cirros-test/virt-launcher-cirros-test-b92b9.18a88a5a7f2ab713
      - cirros-test/virt-launcher-cirros-test-b92b9.18a88a5b9b47e50f
      - cirros-test/virt-launcher-cirros-test-b92b9.18a88a5b9b48ac1f
      - cirros-test/virt-launcher-cirros-test-q4xr7.18a88a5dfbf4e7de
      - cirros-test/virt-launcher-cirros-test-q4xr7.18a88a5ed9051c01
      - cirros-test/virt-launcher-cirros-test-q4xr7.18a88a5ed9057ae6
      - cirros-test/virt-launcher-cirros-test-q4xr7.18a88a5efadfb56d
      - cirros-test/virt-launcher-cirros-test-q4xr7.18a88a5eff3b99bd
      - cirros-test/virt-launcher-cirros-test-q4xr7.18a88a5f27a3341a
      - cirros-test/virt-launcher-cirros-test-q4xr7.18a88a5f28448a24
      - cirros-test/virt-launcher-cirros-test-q4xr7.18a88a5f613266fc
      - cirros-test/virt-launcher-cirros-test-q4xr7.18a88a5f6c3b8c7b
      - cirros-test/virt-launcher-cirros-test-q4xr7.18a88a5f6cd6763f
    v1/Namespace:
      - cirros-test
    v1/PersistentVolume:
      - pvc-9096c09d-63e9-4ec3-891b-1eae51370ec8
      - pvc-b9feeb03-fa03-4fb3-8038-767c793dc43b
    v1/PersistentVolumeClaim:
      - cirros-test/cirros-test-disk
      - cirros-test/persistent-state-for-cirros-test-nm5nd
    v1/Pod:
      - cirros-test/virt-launcher-cirros-test-q4xr7
    v1/Secret:
      - cirros-test/builder-dockercfg-r8qp2
      - cirros-test/default-dockercfg-vnvvk
      - cirros-test/deployer-dockercfg-dxgsk
    v1/ServiceAccount:
      - cirros-test/builder
      - cirros-test/default
      - cirros-test/deployer

  Backup Volumes:
    Velero-Native Snapshots: <none included>

    CSI Snapshots: <none included>

    Pod Volume Backups: <none included>

  HooksAttempted:  2
  HooksFailed:     0

Signed-off-by: Wesley Hayutin <weshayutin@gmail.com>
Signed-off-by: Wesley Hayutin <weshayutin@gmail.com>
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Apr 22, 2026

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository: openshift/coderabbit/.coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: e8037023-a1f6-4b03-96ca-1c9b4954470f

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands and usage tips.

@openshift-ci openshift-ci Bot requested review from eemcmullan and kaovilai April 22, 2026 01:51
Signed-off-by: Wesley Hayutin <weshayutin@gmail.com>
Signed-off-by: Wesley Hayutin <weshayutin@gmail.com>
Signed-off-by: Wesley Hayutin <weshayutin@gmail.com>
@weshayutin
Copy link
Copy Markdown
Contributor Author

@kaovilai if needed we could increase the storage capacity of the test profile in openshift/release for the kubevirt job right?

@kaovilai
Copy link
Copy Markdown
Member

Not sure. But we can definitely have it use our own cluster which we can size how we want

Comment thread tests/e2e/sample-applications/virtual-machines/kubevirt-dm/README.md Outdated
Signed-off-by: Wesley Hayutin <weshayutin@gmail.com>
Signed-off-by: Wesley Hayutin <weshayutin@gmail.com>
Signed-off-by: Wesley Hayutin <weshayutin@gmail.com>
Signed-off-by: Wesley Hayutin <weshayutin@gmail.com>
Signed-off-by: Wesley Hayutin <weshayutin@gmail.com>
Signed-off-by: Wesley Hayutin <weshayutin@gmail.com>
@weshayutin
Copy link
Copy Markdown
Contributor Author

/retest

"aws",
"kubevirt",
"hypershift"
"kubevirt-datamover"
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing comma after "hypershift", this is invalid JSON:

              "hypershift"
              "kubevirt-datamover"                                                                                                                                         
                  

Should be:

              "hypershift",
              "kubevirt-datamover"

}

if v != nil && wasInstalledFromTest {
v.EnsureVirtRemoval()
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The EnsureVirtRemoval() call is now skipped ("leaving installation intact for reuse"). This makes sense for CI iteration speed, but it changes the cleanup behavior for local developer runs HCO, the community CatalogSource, CBT feature gates, and the kubevirt-hyperconverged namespace are all left on the cluster. Previous behavior tore everything down. Worth noting that in testing/dev docs so engineers know to clean up manually.

Signed-off-by: Wesley Hayutin <weshayutin@gmail.com>
Signed-off-by: Wesley Hayutin <weshayutin@gmail.com>
@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Apr 28, 2026
Signed-off-by: Wesley Hayutin <weshayutin@gmail.com>
@openshift-ci
Copy link
Copy Markdown

openshift-ci Bot commented Apr 29, 2026

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: weshayutin
Once this PR has been reviewed and has the lgtm label, please assign dymurray for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci Bot removed the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Apr 29, 2026
@openshift-ci
Copy link
Copy Markdown

openshift-ci Bot commented Apr 29, 2026

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: weshayutin
Once this PR has been reviewed and has the lgtm label, please assign dymurray for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Signed-off-by: Wesley Hayutin <weshayutin@gmail.com>
Signed-off-by: Wesley Hayutin <weshayutin@gmail.com>
Comment thread tests/e2e/lib/backup.go
return ocClient.Create(context.Background(), &backup)
}

func boolPtr(b bool) *bool { return &b }
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Signed-off-by: Wesley Hayutin <weshayutin@gmail.com>
@openshift-ci
Copy link
Copy Markdown

openshift-ci Bot commented Apr 30, 2026

@weshayutin: all tests passed!

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants