Skip to content
This repository has been archived by the owner on Feb 8, 2024. It is now read-only.

Release Process

Pritam Bhavsar edited this page Nov 12, 2021 · 9 revisions

Contributor's workflow

  1. A developer should create a fork from https://github.com/Seagate/cortx-prvsnr, base branch main
  2. All feature deliveries should be part of a new feature branch
  3. Create a PR with base branch as main Maintain the PR by frequently rebasing/merging your code against the main branch
  4. Once PR of the feature branch against the main has all the reviews cleared and the mandatory checks passed, merge the PR using "Squash and merge" button on the PR page.

Maintainer's Workflow to push the commit(s) to stable branch

  1. Create a PR against stable branch
    git fetch origin
    git checkout -B stable origin/stable
    git merge --ff-only origin/main
    git push origin HEAD:stable-candidate-<DDMMYY>
    
    Create a PR for branch stable-candidate- against stable branch
    NOTE:
    • Do not ever merge this PR.
    • To ensure this, set the PR to Draft.
      Setting the PR to Draft ensure no one can merge the PR over Web UI.
      Also, it doesn't affect the merge process using local workspace as mentioned further.
  2. If the checks pass and you have 2 approvals proceed further, else check with admin
  3. On a local workspace manually merge the stable-candidate- branch to stable branch
    git fetch origin
    git checkout -B stable origin/stable
    git merge --ff-only origin/stable-candidate-<DDMMYY>
    git push origin stable
    
    # Delete the temporary branch
    git push origin :stable-candidate-<DDMMYY>
    
    NOTE: Do not force push to stable branch