Skip to content

Commit 1135e7b

Browse files
committed
K8SPG-700: remove redundant code
New pgbackup finalizer will remove the backup annotations. There is no need to check annotations in the reconcile loop of pgcluster
1 parent 971f79c commit 1135e7b

File tree

2 files changed

+0
-117
lines changed

2 files changed

+0
-117
lines changed

percona/controller/pgcluster/backup.go

Lines changed: 0 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -106,9 +106,6 @@ func (r *PGClusterReconciler) cleanupOutdatedBackups(ctx context.Context, cr *v2
106106
}
107107

108108
func (r *PGClusterReconciler) reconcileBackupJobs(ctx context.Context, cr *v2.PerconaPGCluster) error {
109-
if err := checkBackupAnnotations(ctx, r.Client, cr); err != nil {
110-
return errors.Wrap(err, "check backup annotation")
111-
}
112109
for _, repo := range cr.Spec.Backups.PGBackRest.Repos {
113110
backupJobs, err := listBackupJobs(ctx, r.Client, cr, repo.Name)
114111
if err != nil {
@@ -124,38 +121,6 @@ func (r *PGClusterReconciler) reconcileBackupJobs(ctx context.Context, cr *v2.Pe
124121
return nil
125122
}
126123

127-
func checkBackupAnnotations(ctx context.Context, cl client.Client, cr *v2.PerconaPGCluster) error {
128-
backupName := cr.Annotations[pNaming.AnnotationBackupInProgress]
129-
if backupName == "" {
130-
return nil
131-
}
132-
133-
err := cl.Get(ctx, types.NamespacedName{Name: backupName, Namespace: cr.Namespace}, new(v2.PerconaPGBackup))
134-
if err == nil {
135-
return nil
136-
}
137-
if client.IgnoreNotFound(err) != nil {
138-
return errors.Wrapf(err, "failed to get backup %s", backupName)
139-
}
140-
141-
err = retry.RetryOnConflict(retry.DefaultRetry, func() error {
142-
pgCluster := new(v2.PerconaPGCluster)
143-
err := cl.Get(ctx, client.ObjectKeyFromObject(cr), pgCluster)
144-
if err != nil {
145-
return err
146-
}
147-
148-
delete(cr.Annotations, pNaming.AnnotationBackupInProgress)
149-
delete(cr.Annotations, naming.PGBackRestBackup)
150-
151-
return cl.Update(ctx, cr)
152-
})
153-
if err != nil {
154-
return errors.Wrap(err, "failed to update cluster annotation")
155-
}
156-
return nil
157-
}
158-
159124
func reconcileBackupJob(ctx context.Context, cl client.Client, cr *v2.PerconaPGCluster, job batchv1.Job, repoName string) error {
160125
pb, err := findPGBackup(ctx, cl, cr, job, repoName)
161126
if err != nil {

percona/controller/pgcluster/backup_test.go

Lines changed: 0 additions & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -19,88 +19,6 @@ import (
1919
"github.com/percona/percona-postgresql-operator/pkg/apis/postgres-operator.crunchydata.com/v1beta1"
2020
)
2121

22-
func TestCheckBackupAnnotations(t *testing.T) {
23-
ctx := context.Background()
24-
25-
const crName = "check-backup-annotations"
26-
const backupName = "backup1"
27-
const ns = crName
28-
29-
cr, err := readDefaultCR(crName, ns)
30-
if err != nil {
31-
t.Fatal(err)
32-
}
33-
34-
pgBackup, err := readDefaultBackup(backupName, ns)
35-
if err != nil {
36-
t.Fatal(err)
37-
}
38-
pgBackup.Spec.PGCluster = crName
39-
40-
fakeClient, err := buildFakeClient(ctx, cr, pgBackup)
41-
if err != nil {
42-
t.Fatalf("failed to build fake client: %v", err)
43-
}
44-
45-
reconciler := backupReconciler()
46-
reconciler.Client = fakeClient
47-
48-
reconcile := func() {
49-
backupNsName := types.NamespacedName{Name: backupName, Namespace: ns}
50-
51-
_, err = reconciler.Reconcile(ctx, ctrl.Request{NamespacedName: backupNsName})
52-
if err != nil {
53-
t.Fatal(err)
54-
}
55-
if err := fakeClient.Get(ctx, client.ObjectKeyFromObject(cr), cr); err != nil {
56-
t.Fatal(err)
57-
}
58-
if err := fakeClient.Get(ctx, client.ObjectKeyFromObject(pgBackup), pgBackup); err != nil {
59-
t.Fatal(err)
60-
}
61-
}
62-
initialAnnotations := make(map[string]string)
63-
for k, v := range cr.Annotations {
64-
initialAnnotations[k] = v
65-
}
66-
67-
reconcile()
68-
69-
startingAnnotations := make(map[string]string)
70-
for k, v := range cr.Annotations {
71-
startingAnnotations[k] = v
72-
}
73-
74-
if pgBackup.Status.State != v2.BackupStarting {
75-
t.Fatal("backup state is not Starting")
76-
}
77-
78-
// Annotations should not be deleted if pgbackup is not deleted
79-
if err := checkBackupAnnotations(ctx, fakeClient, cr); err != nil {
80-
t.Fatal(err)
81-
}
82-
if err := fakeClient.Get(ctx, client.ObjectKeyFromObject(cr), cr); err != nil {
83-
t.Fatal(err)
84-
}
85-
if !compareMaps(startingAnnotations, cr.Annotations) {
86-
t.Fatal("cr annotations changed after check backup annotation")
87-
}
88-
89-
// Annotations should be deleted if pgbackup is deleted
90-
if err := fakeClient.Delete(ctx, pgBackup); err != nil {
91-
t.Fatal(err)
92-
}
93-
if err := checkBackupAnnotations(ctx, fakeClient, cr); err != nil {
94-
t.Fatal(err)
95-
}
96-
if err := fakeClient.Get(ctx, client.ObjectKeyFromObject(cr), cr); err != nil {
97-
t.Fatal(err)
98-
}
99-
if !compareMaps(cr.Annotations, initialAnnotations) {
100-
t.Fatal("annotations are have different size", cr.Annotations, initialAnnotations)
101-
}
102-
}
103-
10422
func compareMaps(x map[string]string, y map[string]string) bool {
10523
if len(x) != len(y) {
10624
return false

0 commit comments

Comments
 (0)