Making releases
Preparation
Check that python libs are up-to-date (start in clean virtual env,
pip install -U -r requirements_dev.txt -r requirements_prod.txt -r requirements.txt
,`pip list --outdated
).Check that external CSS/JS libs are up-to-date.
Check that all migrations are created (
makemigrations
).Check that all translations are done.
Check for changes in
helfertool.yaml
: update docs andhelfertoolctl
Git
The following describes the steps for a new release series (like 1.1.x
).
Rebase the dev
branch to the main
first.
Then, check that the version is correctly set in the following files.
It needs to be the latest version of the main
branch (like 1.0.2
).
.bumpversion.cfg
src/version.txt
A commit of the changes is not necessary.
Then create the new version:
bump2version --allow-dirty major|minor|patch
Check the git log:
There should be a new commit and tag.
The commit should only change the version in the two files listed above, nothing else.
Push the branch, but not the tag:
git push
Create a pull request on Github, so that the final code quality checks are started.
If this is ok, merge the branch and also push the tags:
git checkout main
git merge dev
git push
git push --tags
Container
The container is built and pushed automatically via Github actions.
In case there are issues, a local build is possible:
./scripts/container.sh build
Then run it to see if every services starts, check http://localhost:8000 in your browser:
./scripts/container.sh test
If that worked, push the new container:
./scripts/container.sh push
Website and documentation
Git cleanup
In the dev
branch, the version in src/vesion.txt
needs to be set to dev
again.
Commit this change to the dev
branch.