Skip to content

Commit 9114318

Browse files
committed
update requeue parameter
`ctrl.Result{Requeue: true}` is influenced by backing off. We want to avoid it. Signed-off-by: Yuji Ito <llamerada.jp@gmail.com>
1 parent 8d370a6 commit 9114318

6 files changed

Lines changed: 23 additions & 17 deletions

File tree

internal/controller/mantlebackup_controller_test.go

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1380,7 +1380,7 @@ var _ = Describe("export and upload", func() {
13801380
diffFrom: diffFrom,
13811381
})
13821382
Expect(err).NotTo(HaveOccurred())
1383-
Expect(ret.Requeue).To(BeTrue())
1383+
Expect(ret.RequeueAfter).NotTo(BeZero())
13841384

13851385
return target
13861386
}
@@ -1394,7 +1394,7 @@ var _ = Describe("export and upload", func() {
13941394
diffFrom: nil,
13951395
})
13961396
Expect(err).NotTo(HaveOccurred())
1397-
Expect(ret.Requeue).To(BeTrue())
1397+
Expect(ret.RequeueAfter).NotTo(BeZero())
13981398
}
13991399

14001400
completeJob := func(ctx SpecContext, jobName string) {
@@ -1739,7 +1739,7 @@ var _ = Describe("import", func() {
17391739
// The first call to reconcileImportJob should create an import Job
17401740
res, err := mbr.reconcileImportJob(ctx, backup, snapshotTarget, -1)
17411741
Expect(err).NotTo(HaveOccurred())
1742-
Expect(res.Requeue).To(BeTrue())
1742+
Expect(res.RequeueAfter).NotTo(BeZero())
17431743

17441744
var importJob batchv1.Job
17451745
err = k8sClient.Get(ctx, types.NamespacedName{
@@ -1751,7 +1751,7 @@ var _ = Describe("import", func() {
17511751
// The successive calls should return ctrl.Result{Requeue: true} until the import Job is completed.
17521752
res, err = mbr.reconcileImportJob(ctx, backup, snapshotTarget, -1)
17531753
Expect(err).NotTo(HaveOccurred())
1754-
Expect(res.Requeue).To(BeTrue())
1754+
Expect(res.RequeueAfter).NotTo(BeZero())
17551755

17561756
// Make the import Job completed.
17571757
completeJob(ctx, importJob.GetNamespace(), importJob.GetName())
@@ -2177,7 +2177,7 @@ var _ = Describe("import", func() {
21772177

21782178
result, err := mbr.reconcileZeroOutJob(ctx, backup, &snapshotTarget{})
21792179
Expect(err).NotTo(HaveOccurred())
2180-
Expect(result.Requeue).To(BeFalse())
2180+
Expect(result.RequeueAfter).To(BeZero())
21812181

21822182
var pv corev1.PersistentVolume
21832183
err = k8sClient.Get(ctx, types.NamespacedName{Name: MakeZeroOutPVName(backup)}, &pv)
@@ -2258,7 +2258,7 @@ var _ = Describe("import", func() {
22582258
// The first call to reconcileZeroOutJob should create a PV, PVC, and Job, and requeue.
22592259
result, err := mbr.reconcileZeroOutJob(ctx, backup, snapshotTarget)
22602260
Expect(err).NotTo(HaveOccurred())
2261-
Expect(result.Requeue).To(BeTrue())
2261+
Expect(result.RequeueAfter).NotTo(BeZero())
22622262

22632263
var pv corev1.PersistentVolume
22642264
err = k8sClient.Get(ctx, types.NamespacedName{Name: MakeZeroOutPVName(backup), Namespace: nsController}, &pv)
@@ -2325,7 +2325,7 @@ var _ = Describe("import", func() {
23252325
// A call to reconcileZeroOutJob should NOT requeue after the Job completed
23262326
result, err = mbr.reconcileZeroOutJob(ctx, backup, snapshotTarget)
23272327
Expect(err).NotTo(HaveOccurred())
2328-
Expect(result.Requeue).To(BeFalse())
2328+
Expect(result.RequeueAfter).To(BeZero())
23292329
})
23302330
})
23312331

internal/controller/suite_test.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,9 @@ var _ = BeforeSuite(func(ctx SpecContext) {
7171
Expect(err).NotTo(HaveOccurred())
7272
Expect(k8sClient).NotTo(BeNil())
7373

74+
err = os.Setenv("REQUEUE_RECONCILIATION_AFTER", "10s")
75+
Expect(err).NotTo(HaveOccurred())
76+
7477
By("Setup common resources")
7578
resMgr, err = testutil.NewResourceManager(k8sClient)
7679
Expect(err).NotTo(HaveOccurred())

internal/controller/util.go

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -151,12 +151,12 @@ func IsJobConditionTrue(conditions []batchv1.JobCondition, conditionType batchv1
151151

152152
func requeueReconciliation() ctrl.Result {
153153
requeueAfter := os.Getenv("REQUEUE_RECONCILIATION_AFTER")
154-
if requeueAfter != "" {
155-
duration, err := time.ParseDuration(requeueAfter)
156-
if err != nil {
157-
panic(fmt.Sprintf("set REQUEUE_RECONCILIATION_AFTER properly: %v", err))
158-
}
159-
return ctrl.Result{RequeueAfter: duration}
154+
if len(requeueAfter) == 0 {
155+
panic("You should set REQUEUE_RECONCILIATION_AFTER env var.")
156+
}
157+
duration, err := time.ParseDuration(requeueAfter)
158+
if err != nil {
159+
panic(fmt.Sprintf("Set REQUEUE_RECONCILIATION_AFTER properly: %v", err))
160160
}
161-
return ctrl.Result{Requeue: true}
161+
return ctrl.Result{RequeueAfter: duration}
162162
}

internal/webhook/v1/suite_test.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,9 @@ var _ = BeforeSuite(func(ctx SpecContext) {
7373
Expect(err).NotTo(HaveOccurred())
7474
Expect(k8sClient).NotTo(BeNil())
7575

76+
err = os.Setenv("REQUEUE_RECONCILIATION_AFTER", "10s")
77+
Expect(err).NotTo(HaveOccurred())
78+
7679
By("Setup common resources")
7780
resMgr, err = testutil.NewResourceManager(k8sClient)
7881
Expect(err).NotTo(HaveOccurred())

test/e2e/testdata/values-mantle-primary-template.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ controller:
1616
#noProxy: localhost,127.0.0.1,10.96.0.0/12
1717
env:
1818
- name: REQUEUE_RECONCILIATION_AFTER
19-
value: "1s"
19+
value: "10s"
2020
backupTransferPartSize: {BACKUP_TRANSFER_PART_SIZE}
2121
mtls:
2222
serverCACertConfigMap: mantle-secondary-ca-crt

test/e2e/testdata/values-mantle-secondary-template.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@ controller:
1313
envSecret: export-data
1414
gcInterval: 1s
1515
env:
16-
- name: REQUEUE_RECONCILIATION_IMMEDIATELY
17-
value: "1"
16+
- name: REQUEUE_RECONCILIATION_AFTER
17+
value: "10s"
1818
mtls:
1919
clientCACertConfigMap: mantle-primary-ca-crt
2020
serverTLSSecret: cert-mantle-replication

0 commit comments

Comments
 (0)