-
Sub-task
-
Resolution: Done
-
Undefined
-
None
-
None
-
None
-
None
-
4
-
False
-
-
False
-
Passed
-
-
-
0
-
0.000
-
Very Likely
-
0
-
None
-
Unset
-
Unknown
Description of problem: Backup partially fails for a namespace without PVC.
Version-Release number of selected component (if applicable):
1.1.1-34, but happened before, not sure exactly when was introduced, yet it's a regression from 1.1.0
How reproducible: 100%
Steps to Reproduce:
1. Create DataMover backup of an application namespace without PVC (stateless app)
Actual results: Backup partially fails
fails with error:
time="2022-10-27T14:32:29Z" level=error msg="volumesnapshotclass.snapshot.storage.k8s.io \"empty-project-e2e-06c58ed2-5604-11ed-b663-902e163f806c-snapclass\" not found" backup=openshift-adp/empty-project-e2e-06c58ed2-5604-11ed-b663-902e163f806c logSource="/remote-source/velero/app/pkg/controller/backup_controller.go:675"
looks like it assumes some volumesnapshot name for a volumesnapshot class or something.
Expected results: Expected it not to fail, just skip the volume backup part as with any other type of backup (restic/native csi/vsl)
Additional info:
Backup CR:
apiVersion: velero.io/v1 kind: Backup metadata: annotations: velero.io/source-cluster-k8s-gitversion: v1.24.6+5157800 velero.io/source-cluster-k8s-major-version: "1" velero.io/source-cluster-k8s-minor-version: "24" creationTimestamp: "2022-10-27T14:31:49Z" generation: 5 labels: velero.io/storage-location: ts-dpa-1 name: empty-project-e2e-06c58ed2-5604-11ed-b663-902e163f806c namespace: openshift-adp resourceVersion: "273953" uid: d3f4ee9f-fd35-404b-9d98-28f4847974fc spec: csiSnapshotTimeout: 10m0s defaultVolumesToRestic: false hooks: {} includedNamespaces: - empty-project-ns metadata: {} storageLocation: ts-dpa-1 ttl: 720h0m0s status: completionTimestamp: "2022-10-27T14:32:29Z" errors: 1 expiration: "2022-11-26T14:31:49Z" formatVersion: 1.1.0 phase: PartiallyFailed progress: itemsBackedUp: 20 totalItems: 20 startTimestamp: "2022-10-27T14:31:53Z" version: 1
vsclass:
[mperetz@fedora oadp-qe-automation]$ oc get vsclass -o yaml apiVersion: v1 items: - apiVersion: snapshot.storage.k8s.io/v1 deletionPolicy: Delete driver: ebs.csi.aws.com kind: VolumeSnapshotClass metadata: creationTimestamp: "2022-10-27T07:45:47Z" generation: 1 name: csi-aws-vsc resourceVersion: "56462" uid: 4b09cd06-d6d7-488e-8013-11475189be96 - apiVersion: snapshot.storage.k8s.io/v1 deletionPolicy: Retain driver: ebs.csi.aws.com kind: VolumeSnapshotClass metadata: annotations: snapshot.storage.kubernetes.io/is-default-class: "true" creationTimestamp: "2022-10-27T14:31:37Z" generation: 1 labels: velero.io/csi-volumesnapshot-class: "true" name: example-snapclass resourceVersion: "273511" uid: 9cf63cba-dc66-411c-b073-38f17dabd1c6 kind: List metadata: resourceVersion: ""
DPA:
[mperetz@fedora oadp-qe-automation]$ oc get dpa -n openshift-adp -o yaml apiVersion: v1 items: - apiVersion: oadp.openshift.io/v1alpha1 kind: DataProtectionApplication metadata: creationTimestamp: "2022-10-27T14:31:27Z" generation: 1 name: ts-dpa namespace: openshift-adp resourceVersion: "273345" uid: 24ec902a-4269-4676-baa6-4f17e9f158c5 spec: backupLocations: - velero: config: region: us-east-2 credential: key: cloud name: cloud-credentials default: true objectStorage: bucket: oadpbucket150295 prefix: velero-e2e-0497ea76-5604-11ed-b663-902e163f806c provider: aws configuration: restic: enable: true podConfig: resourceAllocations: {} velero: defaultPlugins: - openshift - aws - kubevirt - csi features: dataMover: enable: true podDnsConfig: {} snapshotLocations: [] status: conditions: - lastTransitionTime: "2022-10-27T14:31:27Z" message: Reconcile complete reason: Complete status: "True" type: Reconciled kind: List metadata: resourceVersion: ""