feat: add inline canary and batch strategy in RolloutSpec#49
Open
youngLiuHY wants to merge 2 commits intomainfrom
Open
feat: add inline canary and batch strategy in RolloutSpec#49youngLiuHY wants to merge 2 commits intomainfrom
youngLiuHY wants to merge 2 commits intomainfrom
Conversation
Add CanaryStrategy and BatchStrategy fields to RolloutSpec, allowing users to configure rollout strategy directly in Rollout without requiring a separate RolloutStrategy resource. These fields are mutually exclusive with StrategyRef. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
Adds inline rollout strategy configuration to the Rollout API by introducing canaryStrategy and batchStrategy fields on RolloutSpec, alongside regenerated API artifacts and CRD manifests.
Changes:
- Extend
RolloutSpecwith optional inlineCanaryStrategyandBatchStrategyfields and relaxStrategyRefrequirement. - Regenerate deepcopy code and Rollout CRD to include the new fields in the published schema.
- Add an implementation plan document describing the intended API changes and follow-up work in other repos.
Reviewed changes
Copilot reviewed 3 out of 4 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| rollout/v1alpha1/rollout_types.go | Adds CanaryStrategy / BatchStrategy to RolloutSpec and updates StrategyRef annotations/docs. |
| rollout/v1alpha1/zz_generated.deepcopy.go | Regenerated deepcopy logic to correctly copy the new strategy pointers. |
| config/crd/rollout/rollout.kusionstack.io_rollouts.yaml | Regenerated CRD schema to expose canaryStrategy and batchStrategy fields. |
| docs/plans/kube-api-inline-batch-strategy-plan.md | Adds a repo change plan for inline strategy support and regeneration steps. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Add XValidation rules to enforce mutual exclusivity between StrategyRef, CanaryStrategy, and BatchStrategy fields - Fix plan document path from apis/rollout/v1alpha1/types.go to rollout/v1alpha1/rollout_types.go Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add CanaryStrategy and BatchStrategy fields to RolloutSpec, allowing users to configure rollout strategy directly in Rollout without requiring a separate RolloutStrategy resource. These fields are mutually exclusive with StrategyRef.
1. Does this PR affect any open issues?(Y/N) and add issue references (e.g. "fix #123", "re #123".):
2. What is the scope of this PR (e.g. component or file name):
3. Provide a description of the PR(e.g. more details, effects, motivations or doc link):
4. Are there any breaking changes?(Y/N) and describe the breaking changes(e.g. more details, motivations or doc link):
5. Are there test cases for these changes?(Y/N) select and add more details, references or doc links:
6. Release note
Please refer to Release Notes Language Style Guide to write a quality release note.