Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add skip-reconcile annotation support for controlled operator pause #13

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

Kaushik-Vijayakumar
Copy link

Fixes Issue #704.

Changes proposed on the PR:

Add support for a skip-reconcile annotation that allows operators to temporarily pause reconciliation for specific Redis Failover resources. This gives operators more control during maintenance windows and migrations.

Example usage:

apiVersion: databases.spotahome.com/v1
kind: RedisFailover
metadata:
  name: redisfailover-sample
  annotations:
    skip-reconcile: "true"
spec:
  # ... rest of the spec

Implementation Details

The implementation checks for the annotation at the start of the reconciliation loop:

if rf.Annotations != nil {
    skipReconcile, ok := rf.Annotations["skip-reconcile"]
    if ok && skipReconcile == "true" {
        r.logger.Infoln("skip-reconcile set to true. Skipping reconcile for", rf.Name)
        return nil
    }
}

@samof76
Copy link
Collaborator

samof76 commented Dec 4, 2024

Require an integration test.

  • Create CR
  • Update the CR with Skip Reconcile
  • Push another update to the CR
  • That should not get updated in the deployment.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add skip-reconcile annotation support for controlled operator pause during migrations
2 participants