source: `GetRequeueAfter` in place of `GetInterval`
The problem with `GetInterval()` was that the returned type was of `metav1.Duration`, while almost anywhere it was used, a type of `time.Duration` was requested. The result of this was that we had to call `GetInterval().Duration` all the time, which would become a bit cumbersome after awhile. To prevent this, we introduce a new `GetRequeueAfter() time.Duration` method, which both results the right type, and bears a name that is easier to remember where the value is used most; while setting the `Result.RequeueAfter` during reconcile operations. The introduced of this method deprecates `GetInterval()`, which should be removed in a future MINOR release. Signed-off-by: Hidde Beydals <hello@hidde.co>
This commit is contained in:
parent
a9d6cab286
commit
bb9f972e70
|
@ -218,7 +218,7 @@ func (r *GitRepositoryReconciler) reconcile(ctx context.Context, obj *sourcev1.G
|
||||||
// Reconcile the source from upstream
|
// Reconcile the source from upstream
|
||||||
var artifact sourcev1.Artifact
|
var artifact sourcev1.Artifact
|
||||||
if result, err := r.reconcileSource(ctx, obj, &artifact, tmpDir); err != nil || result.IsZero() {
|
if result, err := r.reconcileSource(ctx, obj, &artifact, tmpDir); err != nil || result.IsZero() {
|
||||||
return ctrl.Result{RequeueAfter: obj.Spec.Interval.Duration}, err
|
return ctrl.Result{RequeueAfter: obj.GetRequeueAfter()}, err
|
||||||
}
|
}
|
||||||
|
|
||||||
// Reconcile includes from the storage
|
// Reconcile includes from the storage
|
||||||
|
@ -232,7 +232,7 @@ func (r *GitRepositoryReconciler) reconcile(ctx context.Context, obj *sourcev1.G
|
||||||
return result, err
|
return result, err
|
||||||
}
|
}
|
||||||
|
|
||||||
return ctrl.Result{RequeueAfter: obj.Spec.Interval.Duration}, nil
|
return ctrl.Result{RequeueAfter: obj.GetRequeueAfter()}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// reconcileStorage ensures the current state of the storage matches the desired and previously observed state.
|
// reconcileStorage ensures the current state of the storage matches the desired and previously observed state.
|
||||||
|
@ -265,7 +265,7 @@ func (r *GitRepositoryReconciler) reconcileStorage(ctx context.Context, obj *sou
|
||||||
r.Storage.SetArtifactURL(obj.GetArtifact())
|
r.Storage.SetArtifactURL(obj.GetArtifact())
|
||||||
obj.Status.URL = r.Storage.SetHostname(obj.Status.URL)
|
obj.Status.URL = r.Storage.SetHostname(obj.Status.URL)
|
||||||
|
|
||||||
return ctrl.Result{RequeueAfter: obj.Spec.Interval.Duration}, nil
|
return ctrl.Result{RequeueAfter: obj.GetRequeueAfter()}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// reconcileSource ensures the upstream Git repository can be reached and checked out using the declared configuration,
|
// reconcileSource ensures the upstream Git repository can be reached and checked out using the declared configuration,
|
||||||
|
@ -362,7 +362,7 @@ func (r *GitRepositoryReconciler) reconcileSource(ctx context.Context,
|
||||||
if !obj.GetArtifact().HasRevision(commit.String()) {
|
if !obj.GetArtifact().HasRevision(commit.String()) {
|
||||||
conditions.MarkTrue(obj, sourcev1.ArtifactOutdatedCondition, "NewRevision", "New upstream revision '%s'", commit.String())
|
conditions.MarkTrue(obj, sourcev1.ArtifactOutdatedCondition, "NewRevision", "New upstream revision '%s'", commit.String())
|
||||||
}
|
}
|
||||||
return ctrl.Result{RequeueAfter: obj.Spec.Interval.Duration}, nil
|
return ctrl.Result{RequeueAfter: obj.GetRequeueAfter()}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// reconcileArtifact archives a new artifact to the storage, if the current observation on the object does not match the
|
// reconcileArtifact archives a new artifact to the storage, if the current observation on the object does not match the
|
||||||
|
@ -392,7 +392,7 @@ func (r *GitRepositoryReconciler) reconcileArtifact(ctx context.Context, obj *so
|
||||||
// The artifact is up-to-date
|
// The artifact is up-to-date
|
||||||
if obj.GetArtifact().HasRevision(artifact.Revision) && !includes.Diff(obj.Status.IncludedArtifacts) {
|
if obj.GetArtifact().HasRevision(artifact.Revision) && !includes.Diff(obj.Status.IncludedArtifacts) {
|
||||||
ctrl.LoggerFrom(ctx).Info("Artifact is up-to-date")
|
ctrl.LoggerFrom(ctx).Info("Artifact is up-to-date")
|
||||||
return ctrl.Result{RequeueAfter: obj.GetInterval().Duration}, nil
|
return ctrl.Result{RequeueAfter: obj.GetRequeueAfter()}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// Ensure target path exists and is a directory
|
// Ensure target path exists and is a directory
|
||||||
|
@ -452,7 +452,7 @@ func (r *GitRepositoryReconciler) reconcileArtifact(ctx context.Context, obj *so
|
||||||
if url != "" {
|
if url != "" {
|
||||||
obj.Status.URL = url
|
obj.Status.URL = url
|
||||||
}
|
}
|
||||||
return ctrl.Result{RequeueAfter: obj.Spec.Interval.Duration}, nil
|
return ctrl.Result{RequeueAfter: obj.GetRequeueAfter()}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// reconcileInclude reconciles the declared includes from the object by copying their artifact (sub)contents to the
|
// reconcileInclude reconciles the declared includes from the object by copying their artifact (sub)contents to the
|
||||||
|
@ -507,7 +507,7 @@ func (r *GitRepositoryReconciler) reconcileInclude(ctx context.Context, obj *sou
|
||||||
if artifacts.Diff(obj.Status.IncludedArtifacts) {
|
if artifacts.Diff(obj.Status.IncludedArtifacts) {
|
||||||
conditions.MarkTrue(obj, sourcev1.ArtifactOutdatedCondition, "IncludeChange", "Included artifacts differ from last observed includes")
|
conditions.MarkTrue(obj, sourcev1.ArtifactOutdatedCondition, "IncludeChange", "Included artifacts differ from last observed includes")
|
||||||
}
|
}
|
||||||
return ctrl.Result{RequeueAfter: obj.Spec.Interval.Duration}, nil
|
return ctrl.Result{RequeueAfter: obj.GetRequeueAfter()}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// reconcileDelete handles the delete of an object. It first garbage collects all artifacts for the object from the
|
// reconcileDelete handles the delete of an object. It first garbage collects all artifacts for the object from the
|
||||||
|
@ -531,7 +531,7 @@ func (r *GitRepositoryReconciler) verifyCommitSignature(ctx context.Context, obj
|
||||||
// Check if there is a commit verification is configured and remove any old observations if there is none
|
// Check if there is a commit verification is configured and remove any old observations if there is none
|
||||||
if obj.Spec.Verification == nil || obj.Spec.Verification.Mode == "" {
|
if obj.Spec.Verification == nil || obj.Spec.Verification.Mode == "" {
|
||||||
conditions.Delete(obj, sourcev1.SourceVerifiedCondition)
|
conditions.Delete(obj, sourcev1.SourceVerifiedCondition)
|
||||||
return ctrl.Result{RequeueAfter: obj.Spec.Interval.Duration}, nil
|
return ctrl.Result{RequeueAfter: obj.GetRequeueAfter()}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get secret with GPG data
|
// Get secret with GPG data
|
||||||
|
|
Loading…
Reference in New Issue