Skip to content

Commit

Permalink
Merge pull request #433 from fluxcd/common-finalizer
Browse files Browse the repository at this point in the history
Add a common finalizer for the reconcilers
  • Loading branch information
darkowlzz authored Aug 17, 2023
2 parents 6f61402 + 5d39cea commit 0c5f73e
Show file tree
Hide file tree
Showing 7 changed files with 14 additions and 8 deletions.
2 changes: 2 additions & 0 deletions api/v1beta2/condition_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ limitations under the License.

package v1beta2

const ImageFinalizer = "finalizers.fluxcd.io"

const (
// ImageURLInvalidReason represents the fact that a given repository has an invalid image URL.
ImageURLInvalidReason string = "ImageURLInvalid"
Expand Down
2 changes: 2 additions & 0 deletions api/v1beta2/imagepolicy_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@ import (
)

const ImagePolicyKind = "ImagePolicy"

// Deprecated: Use ImageFinalizer.
const ImagePolicyFinalizer = "finalizers.fluxcd.io"

// ImagePolicySpec defines the parameters for calculating the
Expand Down
2 changes: 2 additions & 0 deletions api/v1beta2/imagerepository_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,8 @@ import (
)

const ImageRepositoryKind = "ImageRepository"

// Deprecated: Use ImageFinalizer.
const ImageRepositoryFinalizer = "finalizers.fluxcd.io"

// ImageRepositorySpec defines the parameters for scanning an image
Expand Down
6 changes: 3 additions & 3 deletions internal/controller/imagepolicy_controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -188,8 +188,8 @@ func (r *ImagePolicyReconciler) Reconcile(ctx context.Context, req ctrl.Request)
// between init and delete.
// Note: Finalizers in general can only be added when the deletionTimestamp
// is not set.
if !controllerutil.ContainsFinalizer(obj, imagev1.ImagePolicyFinalizer) {
controllerutil.AddFinalizer(obj, imagev1.ImagePolicyFinalizer)
if !controllerutil.ContainsFinalizer(obj, imagev1.ImageFinalizer) {
controllerutil.AddFinalizer(obj, imagev1.ImageFinalizer)
return ctrl.Result{Requeue: true}, nil
}

Expand Down Expand Up @@ -421,7 +421,7 @@ func (r *ImagePolicyReconciler) applyPolicy(ctx context.Context, obj *imagev1.Im
// reconcileDelete handles the deletion of the object.
func (r *ImagePolicyReconciler) reconcileDelete(ctx context.Context, obj *imagev1.ImagePolicy) (reconcile.Result, error) {
// Remove our finalizer from the list.
controllerutil.RemoveFinalizer(obj, imagev1.ImagePolicyFinalizer)
controllerutil.RemoveFinalizer(obj, imagev1.ImageFinalizer)

// Stop reconciliation as the object is being deleted.
return ctrl.Result{}, nil
Expand Down
6 changes: 3 additions & 3 deletions internal/controller/imagerepository_controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -173,8 +173,8 @@ func (r *ImageRepositoryReconciler) Reconcile(ctx context.Context, req ctrl.Requ
// between init and delete.
// Note: Finalizers in general can only be added when the deletionTimestamp
// is not set.
if !controllerutil.ContainsFinalizer(obj, imagev1.ImageRepositoryFinalizer) {
controllerutil.AddFinalizer(obj, imagev1.ImageRepositoryFinalizer)
if !controllerutil.ContainsFinalizer(obj, imagev1.ImageFinalizer) {
controllerutil.AddFinalizer(obj, imagev1.ImageFinalizer)
return ctrl.Result{Requeue: true}, nil
}

Expand Down Expand Up @@ -537,7 +537,7 @@ func (r *ImageRepositoryReconciler) scan(ctx context.Context, obj *imagev1.Image
// reconcileDelete handles the deletion of the object.
func (r *ImageRepositoryReconciler) reconcileDelete(ctx context.Context, obj *imagev1.ImageRepository) (ctrl.Result, error) {
// Remove our finalizer from the list.
controllerutil.RemoveFinalizer(obj, imagev1.ImageRepositoryFinalizer)
controllerutil.RemoveFinalizer(obj, imagev1.ImageFinalizer)

// Stop reconciliation as the object is being deleted.
return ctrl.Result{}, nil
Expand Down
2 changes: 1 addition & 1 deletion internal/controller/scan_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,7 @@ func TestImageRepositoryReconciler_repositorySuspended(t *testing.T) {
repo.Namespace = imageRepoName.Namespace

// Add finalizer so that reconciliation reaches suspend check.
controllerutil.AddFinalizer(&repo, imagev1.ImageRepositoryFinalizer)
controllerutil.AddFinalizer(&repo, imagev1.ImageFinalizer)

builder := fakeclient.NewClientBuilder().WithScheme(testEnv.GetScheme())
builder.WithObjects(&repo)
Expand Down
2 changes: 1 addition & 1 deletion main.go
Original file line number Diff line number Diff line change
Expand Up @@ -203,7 +203,7 @@ func main() {
os.Exit(1)
}

metricsH := helper.NewMetrics(mgr, metrics.MustMakeRecorder(), imagev1.ImageRepositoryFinalizer)
metricsH := helper.NewMetrics(mgr, metrics.MustMakeRecorder(), imagev1.ImageFinalizer)

if err := (&controller.ImageRepositoryReconciler{
Client: mgr.GetClient(),
Expand Down

0 comments on commit 0c5f73e

Please sign in to comment.