From f85636f48fd7de3a52457da708a8efe09b5c447b Mon Sep 17 00:00:00 2001 From: Conan Scott Date: Wed, 31 Dec 2025 14:29:26 +1100 Subject: [PATCH] removed pods from exclusions added timezones to backup and restore --- manifests/backup-test-cronjob.yaml | 86 +++++++++++++++--------------- manifests/config-backups.yaml | 2 +- manifests/stateful-backups.yaml | 4 +- 3 files changed, 46 insertions(+), 46 deletions(-) diff --git a/manifests/backup-test-cronjob.yaml b/manifests/backup-test-cronjob.yaml index 2a69069..91bf8c0 100644 --- a/manifests/backup-test-cronjob.yaml +++ b/manifests/backup-test-cronjob.yaml @@ -6,7 +6,8 @@ metadata: name: monthly-restore-test namespace: openshift-adp spec: - schedule: "0 06 15 * *" # 15th of month, 6 AM + timeZone: "Australia/Sydney" + schedule: "0 06 15 * *" # 15th of month, 6 AM concurrencyPolicy: Forbid successfulJobsHistoryLimit: 3 failedJobsHistoryLimit: 3 @@ -20,44 +21,45 @@ spec: serviceAccountName: velero restartPolicy: OnFailure containers: - - name: restore-test - image: quay.io/konveyor/velero:latest - env: - - name: VELERO_NAMESPACE - value: openshift-adp - command: - - /bin/bash - - -c - - | - set -e - - echo "=== Velero Restore Test ===" - echo "Date: $(date)" - - # Get latest daily-config backup - CONFIG_BACKUP=$(velero backup get --selector="backup-type=config" \ - -o json | jq -r '.items[0].metadata.name') - - # Get latest daily-stateful backup - STATEFUL_BACKUP=$(velero backup get --selector="backup-type=stateful" \ - -o json | jq -r '.items[0].metadata.name') - - echo "Latest config backup: $CONFIG_BACKUP" - echo "Latest stateful backup: $STATEFUL_BACKUP" - - # Verify backups are successful - CONFIG_STATUS=$(velero backup get $CONFIG_BACKUP -o json | \ - jq -r '.status.phase') - STATEFUL_STATUS=$(velero backup get $STATEFUL_BACKUP -o json | \ - jq -r '.status.phase') - - echo "Config backup status: $CONFIG_STATUS" - echo "Stateful backup status: $STATEFUL_STATUS" - - if [ "$CONFIG_STATUS" != "Completed" ] || [ "$STATEFUL_STATUS" != "Completed" ]; then - echo "ERROR: Backups not in Completed state" - exit 1 - fi - - echo "=== Test Passed ===" - echo "All backups verified successfully" \ No newline at end of file + - name: restore-test + image: quay.io/konveyor/velero:latest + env: + - name: VELERO_NAMESPACE + value: openshift-adp + command: + - /bin/bash + - -c + - | + set -e + + echo "=== Velero Restore Test ===" + echo "Date: $(date)" + + # Get latest daily-config backup + CONFIG_BACKUP=$(velero backup get --selector="backup-type=config" \ + -o json | jq -r '.items[0].metadata.name') + + # Get latest daily-stateful backup + STATEFUL_BACKUP=$(velero backup get --selector="backup-type=stateful" \ + -o json | jq -r '.items[0].metadata.name') + + echo "Latest config backup: $CONFIG_BACKUP" + echo "Latest stateful backup: $STATEFUL_BACKUP" + + # Verify backups are successful + CONFIG_STATUS=$(velero backup get $CONFIG_BACKUP -o json | \ + jq -r '.status.phase') + STATEFUL_STATUS=$(velero backup get $STATEFUL_BACKUP -o json | \ + jq -r '.status.phase') + + echo "Config backup status: $CONFIG_STATUS" + echo "Stateful backup status: $STATEFUL_STATUS" + + if [ "$CONFIG_STATUS" != "Completed" ] || [ "$STATEFUL_STATUS" != "Completed" ]; then + echo "ERROR: Backups not in Completed state" + exit 1 + fi + + echo "=== Test Passed ===" + echo "All backups verified successfully" + diff --git a/manifests/config-backups.yaml b/manifests/config-backups.yaml index c223d5e..6795345 100644 --- a/manifests/config-backups.yaml +++ b/manifests/config-backups.yaml @@ -6,7 +6,7 @@ metadata: name: daily-config namespace: openshift-adp spec: - schedule: "0 02 * * *" # 2 AM daily + schedule: "CRON_TZ=Australia/Sydney 0 02 * * *" # 2 AM daily # Make backups readable, sortable, unique #nameTemplate: "{{ .ScheduleName }}-{{ .Timestamp }}" diff --git a/manifests/stateful-backups.yaml b/manifests/stateful-backups.yaml index cf09986..4a936a8 100644 --- a/manifests/stateful-backups.yaml +++ b/manifests/stateful-backups.yaml @@ -6,7 +6,7 @@ metadata: name: daily-stateful namespace: openshift-adp spec: - schedule: "0 03 * * *" # 3 AM daily (after config backup) + schedule: "CRON_TZ=Australia/Sydney 0 03 * * *" # 3 AM daily (after config backup) #nameTemplate: "{{ .ScheduleName }}-{{ .Timestamp }}" @@ -32,8 +32,6 @@ spec: - events.events.k8s.io - pipelineruns.tekton.dev - taskruns.tekton.dev - - replicasets.apps - - pods # Use Kopia for volume backups snapshotVolumes: false