mirror of
https://github.com/netbox-community/netbox-docker.git
synced 2024-11-07 08:34:00 +01:00
17
Release
Christian Mäder edited this page 2021-10-06 17:03:38 +02:00
Prepare a Release
- Make sure you're on the
develop
branch:git checkout develop
- Make sure, that the branch is clean:
git status
should not show any pending change.- Use
git stash
to stash them away for the release process.
- Use
- Merge any relevant feature into
develop
. Either via Github PRs (make sure the PR targets thedevelop
branch!) or manually:- Create a new local branch:
git checkout -b feature-name develop
- Pull the remote change into the current branch:
git pull https://github.com/other-user-or-org/netbox-docker.git remote-branch-name
- Check whether the build still works:
./build.sh
- Switch back to your
develop
branch:git checkout develop
- Merge the feature into the
develop
branch:git merge --no-ff feature-name
- Clean up your local branches:
git branch -d feature-name
- Create a new local branch:
- Put the new version into the
VERSION
file:echo "0.20.0" > VERSION
- Put the new version into the
docker-compose.yml
file: Replace:${VERSION-v3.0-1.4.1}
with the latest version combination. - Make a commit with the version file change:
git commit -m "Preparation for $(cat VERSION)" VERSION docker-compose.yml
- Push the branch and make a new PR on Github from
develop
torelease
Now another maintainer has to approve the PR.
Make the release (mostly automatically)
The release script automates the merging and tagging and pushing. It tries to be as safe as possible to use. E.g. it checks that there are no pending changes in the current repository.
- Run
./release.sh
in thedevelop
branch. - 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.
Make the release (completely manually)
After the PR is merged, tag that commit:
- Either locally:
- Checkout the
release
branch - Update to the latest version:
git pull -pr origin release
- Create the tag:
git tag "$(cat VERSION)"
- Push the tag:
git push origin --tags
- Checkout the
- Or on Github:
- Go to the Release Page
- Click Draft a New Release
- Choose the
release
branch - 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.
Cleanup
Close the related Github milestone and all issues that have been fixed by this version.