Requirement and Design document : DevOps- CI/CD
In a Gitflow branching strategy, you typically have two separate pull request (PR) workflows for approving code changes:
1. Feature Branch to Develop Branch (Targets Dev & QA):
- Who submits the PR: A developer submits a PR after completing work on a feature branch.
- What's reviewed: The PR reviewer focuses on the specific feature implementation and related code changes.
- Reviewers: This typically involves developers familiar with the codebase and the feature's functionality.
- Approval criteria: Reviewers assess the code quality, functionality, adherence to coding standards, and successful unit testing of the feature.
- Deployment after merge: Upon successful merge into the
developbranch, your CI/CD pipeline (if configured) can automatically deploy the code changes to the development (dev) and quality assurance (QA) environments for further testing.
2. Release Branch to Master Branch (Targets UAT & PROD):
- Who submits the PR: A designated person (e.g., release manager) submits a PR after the release is planned and the release branch is prepared.
- What's reviewed: The PR reviewer focuses on the completeness and stability of the release, ensuring it incorporates all approved features and bug fixes.
- Reviewers: This might involve a broader team, including developers, testers, and potentially stakeholders, depending on the size and criticality of the release.
- Approval criteria: Reviewers assess the overall stability, inclusion of required features and fixes, successful integration testing, and potentially UAT (user acceptance testing) results.
- Deployment after merge: Upon successful merge into the
masterbranch, your CI/CD pipeline can be configured to deploy the code changes to the user acceptance testing (UAT) environment first, followed by production (PROD) after successful UAT sign-off.
Key Points:
- Separate PR workflows ensure focused reviews for features and overall release readiness.
- Approval criteria for each PR stage should be well-defined and communicated within your team.
- Leverage CI/CD pipelines to automate deployments based on branch merges (develop for dev/QA, master for UAT/PROD).
Additional Considerations:
- The number of reviewers and specific approval requirements can be configured within your Git hosting platform's branch policies.
- It's beneficial to have clear documentation outlining the PR workflow and approval process for your team.
Comments
Post a Comment