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

Introduce a new mutating webhook that adds a readiness gate #1458

Closed
7 tasks
Tracked by #1448
thisthat opened this issue May 24, 2023 · 1 comment
Closed
7 tasks
Tracked by #1448

Introduce a new mutating webhook that adds a readiness gate #1458

thisthat opened this issue May 24, 2023 · 1 comment
Labels
enhancement New feature or request lifecycle-operator on hold Do not merge yet
Milestone

Comments

@thisthat
Copy link
Member

thisthat commented May 24, 2023

Goal

Register a new mutating webhook that injects the Readiness Gate keptn-pre-checks-gate.

Details

With controller runtime v0.15.0, we can deprecate the scheduler approach in favor of gates.
However, this can be only fully supported once K8s promotes the Readiness Gate APIs to stable. Hence, we should hide this new behavior behind the keptn.readiness-gate Feature Flag - by default this is disabled.
If the FF is enabled, the operator registers an additional webhook that adds a readiness gate names keptn-pre-checks-gate.
This webhook should only react to CREATE operations and operates iff the ns is annotated and the required labels are present.

Acceptance Criteria

  • Use OpenFeature FF keptn.readiness-gate to hide the new behavior
  • If the FF is enabled, then register the webhook
  • The new webhook uses the same logic of the already existing webhook to determine if it should add the gate or not

DoD

  • The keptn-pre-checks-gate readiness gate is added only when a new manifest is created
  • If the FF is disabled, KLT works like this feature was never introduced
  • Component
  • Kuttl test that assert on the different annotations: scheduler and readiness gates

Depends on

Resources

@thisthat thisthat changed the title Introduce a new mutating webhook that adds a readiness gate (WIP) Introduce a new mutating webhook that adds a readiness gate May 24, 2023
@thisthat thisthat added enhancement New feature or request operator labels May 25, 2023
@thisthat thisthat moved this to 🏗 Shaping in Keptn Lifecycle Toolkit May 25, 2023
@thisthat thisthat changed the title (WIP) Introduce a new mutating webhook that adds a readiness gate Introduce a new mutating webhook that adds a readiness gate May 26, 2023
@thisthat thisthat added the status: ready-for-refinement Issue is relevant for the next backlog refinment label May 26, 2023
@thisthat thisthat added this to the 0.9 milestone May 31, 2023
@thisthat thisthat removed the status: ready-for-refinement Issue is relevant for the next backlog refinment label Jun 13, 2023
@RealAnna RealAnna added the on hold Do not merge yet label Jul 12, 2023
@thisthat thisthat modified the milestones: 0.9, 0.10 Sep 25, 2023
@odubajDT
Copy link
Contributor

This functionality is already in place, closing this ticket

@github-project-automation github-project-automation bot moved this from 🏗 Shaping to ✅ Done in Keptn Lifecycle Toolkit Sep 28, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request lifecycle-operator on hold Do not merge yet
Projects
Archived in project
Development

No branches or pull requests

3 participants