-
Story
-
Resolution: Unresolved
-
Major
-
None
-
None
-
False
-
-
False
-
-
Story (Required)
Standardize the CLI release process
This story aims to standardize the CLI release process and align it with the release model followed by other components (e.g., Pipelines), improving consistency, traceability, automation, and maintainability.
TEP: 0165
Background (Required)
Currently, the CLI creates a new branch for every minor and patch release. For patch releases, we manually cherry-pick the required commits at release time. This story aims to standardize the CLI release process and align it with the process followed by other components (e.g., Pipelines).
Out of scope
<Defines what is not included in this story>
Approach (Required)
Align Branching Strategy
Adopt the same branching model used by Pipelines:
- Minor release:
-
- Create a release branch (e.g., release-vX.Y)
-
- Tag releases from the release branch
- Patch release:
-
- Cherry-pick fixes into the existing release branch
-
- Tag patch versions from the same branch
- Avoid cutting a new branch for every patch release
Dependencies
<Describes what this story depends on. Dependent Stories and EPICs should be linked to the story.>
Acceptance Criteria (Mandatory)
<Describe edge cases to consider when implementing the story and defining tests>
<Provides a required and minimum list of acceptance tests for this story. More is expected as the engineer implements this story>
INVEST Checklist
Dependencies identified
Blockers noted and expected delivery timelines set
Design is implementable
Acceptance criteria agreed upon
Story estimated
Legend
Unknown
Verified
Unsatisfied
Done Checklist
- Code is completed, reviewed, documented and checked in
- Unit and integration test automation have been delivered and running cleanly in continuous integration/staging/canary environment
- Continuous Delivery pipeline(s) is able to proceed with new code included
- Customer facing documentation, API docs etc. are produced/updated, reviewed and published
- Acceptance criteria are met