Skip to content
Christian Mäder edited this page Oct 26, 2020 · 17 revisions

Prepare a Release

  1. Make sure you're on the develop branch: git checkout develop
  2. Make sure, that the branch is clean: git status should not show any pending change.
    1. Use git stash to stash them away for the release process.
  3. Merge any relevant feature into develop. Either via Github PRs (make sure the PR targets the develop branch!) or manually:
    1. Create a new local branch: git checkout -b feature-name develop
    2. Pull the remote change into the current branch: git pull https://github.com/other-user-or-org/netbox-docker.git remote-branch-name
    3. Check whether the build still works: ./build.sh
    4. Switch back to your develop branch: git checkout develop
    5. Merge the feature into the develop branch: git merge --no-ff feature-name
    6. Clean up your local branches: git branch -d feature-name
  4. Put the new version into the VERSION file: echo "0.20.0" > VERSION
  5. Make a commit with the version file change: git commit -m "Preparation for $(cat VERSION)" VERSION
  6. Push the branch and make a new PR on Github from develop to release

Now another maintainer has to approve the PR.

Make the release

After the PR is merged, tag that commit:

  • Either locally:
    1. Checkout the release branch
    2. Update to the latest version: git pull -pr origin release
    3. Create the tag: git tag "$(cat VERSION)"
    4. Push the tag: git push origin --tags
  • Or on Github:
    1. Go to the Release Page
    2. Click Draft a New Release
    3. Choose the release branch
    4. Enter the exact value of the VERSION file into the Tag field.

Now go to Github and draft a new release. Copy the text from the most recent previous release and adjust it according to the new release.

Eventually announce the release [on our Slack channel].

Clone this wiki locally