Start new branch in ba-www, and write release letter (content/news/release-*.md)
Finalize release
Finalize bornagain (MRs against release branch):
Finalize CHANGELOG
In hugo/hugo.toml, update baseURL, release_number, version_name, url_blob
After merger into release branch, set git tag vx.y
Finalize ba-www (in fresh release branch):
Finalize release letter
Update content/documentation.md
Update static/js/version_switch
In hugo.toml, update version_mm
Hold back MR until everything else is ready
Upload installers and wheels (this makes the release irreversible):
Build installers and wheels for all Python versions
Installers to www@scgbuild:www/ext/ba/files/version.patch/
Wheels to PyPI
Publish
Create release in Jugit
As www on @scg3
cd ~/ba
cp -pr <old_version>/repo <new_version>/repo; # for hotfix, use extant directory
git fetch --all --prune
git checkout <release_branch>
git pull --all
cd build
cmake ..
make
ctest
make figures
cd ../hugo
hugo
cd ../..
ln -si repo/hugo/public hugo-public
cd ~/www/ba/public
ln -si /home/www/ba/VERSION/hugo-public VERSION
rm latest
ln -si VERSION latest
Merge release branch to ba-www => Docs will automatically be updated
Inform users
Mail to BornAgain mailing list
For major milestones, mail to external mailing lists (neutron, sa_scat [unsigned mails only!])
Update “Latest” section on computing.mlz-garching.de