Skip to content
Snippets Groups Projects
Commit e53e9e1f authored by Wuttke, Joachim's avatar Wuttke, Joachim
Browse files

webdoc/dev release procedure

parent abe36e5c
No related branches found
No related tags found
1 merge request!1868webdoc: start developer reference
Pipeline #108899 passed
...@@ -7,8 +7,10 @@ weight = 90 ...@@ -7,8 +7,10 @@ weight = 90
#### Test phase #### Test phase
- Decide whether it's a minor or major increment, and set version number in `CMakeLists.txt`
- Decide and set recommended_python_minor in `hugo/hugo.toml`
- Declare feature freeze - Declare feature freeze
- Release new versions of library dependencies (heinz, ff) if they have changed. - Release new versions of library dependencies (heinz, ff) if they have changed
- Start release branch - Start release branch
- Update CHANGELOG - Update CHANGELOG
- Build packages, and test them - Build packages, and test them
...@@ -18,35 +20,61 @@ weight = 90 ...@@ -18,35 +20,61 @@ weight = 90
- import sample from script to GUI - import sample from script to GUI
- Start new branch in ba-www, and write release letter (`content/news/release-*.md`) - Start new branch in ba-www, and write release letter (`content/news/release-*.md`)
#### Finalize release
Finalize bornagain (MRs against release branch): - Finalize bornagain (MRs against release branch):
- Finalize CHANGELOG - Finalize CHANGELOG
- CMakeLists.txt - In hugo/hugo.toml, update `baseURL`, `release_number`, `version_name`, `url_blob`
- In hugo/config.toml, update `baseURL`, `release_number` and `version_name` - After merger into release branch, set git tag v`x.y`
- Set git tag v`x.y` - reversible freeze
Finalize ba-www (in fresh release branch): Finalize ba-www (in fresh release branch):
- Finalize release letter
- Update content/documentation.md - Update content/documentation.md
- Update static/js/version_switch - Update static/js/version_switch
- In config.toml, update `version_mm` - In `hugo.toml`, update `version_mm`
- Add release letter - Hold back MR until everything else is ready
Upload installers and wheels (this makes the release irreversible): Upload installers and wheels (this makes the release irreversible):
- Build installers and wheels for all Python versions - Build installers and wheels for all Python versions
- Installers to www@scgbuild:www/ext/ba/files/`version`.`patch`/ - Installers to www@scgbuild:www/ext/ba/files/`version`.`patch`/
- Wheels to PyPI - Wheels to PyPI
Publish: #### Publish
- Create release in Jugit - Create release in Jugit
- In www@scg3:ba: for hotfix, update versioned repository (in subdirectory repo, checkout release branch and run make, make figures etc, hugo); for major release, create new versioned repository - As www on @scg3
- In www@scg3:www/ba/public, update `latest` and version link ```
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 - Merge release branch to ba-www => Docs will automatically be updated
Inform users - Inform users
- Mail to BornAgain mailing list - Mail to BornAgain mailing list
- For major milestones, mail to external mailing lists (neutron, sa_scat [unsigned mails only!]) - For major milestones, mail to external mailing lists (neutron, sa_scat [unsigned mails only!])
- Update "Latest" section on computing.mlz-garching.de - Update "Latest" section on computing.mlz-garching.de
#### Continue development
Create next release branch - Merge changes back into `main`
- Create branch `rx.y`, push to Jugit - fork new feature branch from `main`
- In Jugit > Settings > Repository > Protected Branches, protect the branch - merge release branch
- restore "git-main" in `hugo/hugo.toml`
- update version number in `CMakeLists.txt`
- create MR against `main`
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment