[Multi_K8s-Plugin] Primary Rollout #6591
[Multi_K8s-Plugin] Primary Rollout #6591mohammedfirdouss wants to merge 6 commits intopipe-cd:masterfrom
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests.
Additional details and impacted files@@ Coverage Diff @@
## master #6591 +/- ##
==========================================
- Coverage 28.94% 23.29% -5.66%
==========================================
Files 577 424 -153
Lines 61367 47104 -14263
==========================================
- Hits 17763 10972 -6791
+ Misses 42250 35228 -7022
+ Partials 1354 904 -450 Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
@Warashi Please when you have time, I need your review on the primary rollout. |
|
@mohammedfirdouss |
Warashi
left a comment
There was a problem hiding this comment.
This PR seems to contain changes related to the Canary Clean stage. Please take a look?
Yes, I just need to rebase that is all. @Warashi all done |
0a73ef1 to
2d7112f
Compare
Warashi
left a comment
There was a problem hiding this comment.
I haven't seen all of the changes, but there seems to be something wrong with modifying Canary’s code.
Please take a look.
P.S.
I have a family trip from this Friday to Sunday, so I cannot review deeply. Sorry for the inconvenience.
There was a problem hiding this comment.
I think there's something wrong with this file being modified.
This PR is not for canary stages, and this file is.
Ohh, I will check that now. Okay noted, no problem at all. |
2d7112f to
15e118c
Compare
* Add K8S_PRIMARY_ROLLOUT stage definition and pipeline registration * Implement executeK8sMultiPrimaryRolloutStage with multi-cluster support * Add primary rollout tests covering single cluster, multi-cluster, prune, and service creation scenarios * Add testdata configurations for primary rollout stages * Add K8sPrimaryRolloutStageOptions config type Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
f0621cd to
c28a5bb
Compare
Signed-off-by: Mohammed Firdous <124298708+mohammedfirdouss@users.noreply.github.com>
Signed-off-by: Mohammed Firdous <124298708+mohammedfirdouss@users.noreply.github.com>
Signed-off-by: Mohammed Firdous <124298708+mohammedfirdouss@users.noreply.github.com>
Signed-off-by: Mohammed Firdous <124298708+mohammedfirdouss@users.noreply.github.com>
c28a5bb to
6ea10cd
Compare
|
@Warashi hi. Any updates on this? :) |
What this PR does
Implements
K8S_PRIMARY_ROLLOUTfor thekubernetes_multiclusterplugin. After a canary is validated, this stage promotes the new version as PRIMARY across all targeted clusters in parallel. It supports addVariantLabelToSelector (inject variant label into workload selectors), createService (generate a PRIMARY-varianta Service), and prune (delete stale primary resources no longer in Git).Why we need it
This is the promotion step in the canary pipeline lifecycle —
K8S_CANARY_ROLLOUTandWAIT_APPROVALare validation gates, butK8S_PRIMARY_ROLLOUTis what actually delivers the new version to end-users across all clusters.Which issue(s) this PR fixes
Fixes #6446
Does this PR introduce a user-facing change
K8S_PRIMARY_ROLLOUTto their pipeline to promote a validated canary to primary across multiple clustersPrimary rollout with service
Primary rollout without service