Skip to content

Commit 8e52ec5

Browse files
author
Milla Samuel
committed
Modify
1 parent f1b7839 commit 8e52ec5

File tree

5 files changed

+20
-1
lines changed

5 files changed

+20
-1
lines changed

api/v1beta2/foundationdbbackup_types.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -332,6 +332,12 @@ func (backup *FoundationDBBackup) CheckReconciliation() (bool, error) {
332332
reconciled = false
333333
}
334334

335+
desiredBackupURL := backup.BackupURL()
336+
if backup.Status.BackupDetails.URL != desiredBackupURL {
337+
backup.Status.Generations.NeedsBackupReconfiguration = backup.Generation
338+
reconciled = false
339+
}
340+
335341
isRunning := backup.Status.BackupDetails != nil && backup.Status.BackupDetails.Running
336342
isPaused := backup.Status.BackupDetails != nil && backup.Status.BackupDetails.Paused
337343

controllers/admin_client_test.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -333,7 +333,12 @@ var _ = Describe("admin_client_test", func() {
333333
Context("with a modification to the snapshot time", func() {
334334
BeforeEach(func() {
335335
backup.Spec.SnapshotPeriodSeconds = ptr.To(20)
336+
backup.Spec.BlobStoreConfiguration = &fdbv1beta2.BlobStoreConfiguration{
337+
BackupName: "test-backup",
338+
AccountName: "test",
339+
}
336340
Expect(mockAdminClient.ModifyBackup(backup)).NotTo(HaveOccurred())
341+
337342
})
338343

339344
It("should mark the backup as stopped", func() {

controllers/modify_backup.go

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,12 @@ func (s modifyBackup) reconcile(
4141
return nil
4242
}
4343

44-
if backup.Status.BackupDetails.SnapshotPeriodSeconds != backup.SnapshotPeriodSeconds() {
44+
snapshotPeriod := backup.SnapshotPeriodSeconds()
45+
backupURL := backup.BackupURL()
46+
47+
shouldModify := backup.Status.BackupDetails.SnapshotPeriodSeconds != snapshotPeriod ||
48+
backup.Status.BackupDetails.URL != backupURL
49+
if shouldModify {
4550
adminClient, err := r.adminClientForBackup(ctx, backup)
4651
if err != nil {
4752
return &requeue{curError: err}

fdbclient/admin_client.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -882,6 +882,8 @@ func (client *cliAdminClient) ModifyBackup(backup *fdbv1beta2.FoundationDBBackup
882882
"modify",
883883
"-s",
884884
strconv.Itoa(backup.SnapshotPeriodSeconds()),
885+
"-d",
886+
backup.BackupURL(),
885887
},
886888
})
887889

pkg/fdbadminclient/mock/admin_client_mock.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -919,6 +919,7 @@ func (client *AdminClient) ModifyBackup(backup *fdbv1beta2.FoundationDBBackup) e
919919

920920
currentBackup := client.Backups["default"]
921921
currentBackup.SnapshotPeriodSeconds = backup.SnapshotPeriodSeconds()
922+
currentBackup.URL = backup.BackupURL()
922923
client.Backups["default"] = currentBackup
923924
return nil
924925
}

0 commit comments

Comments
 (0)