Releases
georchestra/georchestra repo
Since geOrchestra 26, most modules are now in their own repos and releasing core is simpler.
Todo on GitHub
After updating files for a minor or major release:
- Create a new release on the tag created: https://github.com/georchestra/georchestra/releases
- Fill the compatibility matrix with the latest stable, compatible versions of known modules (you can often copy and edit it from a previous release), e.g.:
| App | Release link | Docker tag | Upstream version |
|---|---|---|---|
| georchestra/console | 25.0.3 | - | |
| georchestra/gateway | georchestra/gateway@2.0.5 | 2.0.5 | - |
| georchestra/mapstore | georchestra/mapstore@2024.02.00-geOrchestra-headerConfig-6abf34 | 2024.02.00-geOrchestra-headerConfig-6abf34 | 2024.02.00 |
- Make an announcement: https://github.com/orgs/georchestra/discussions/categories/announcements
Minor release
Steps on the repo
Easy method:
- Execute
./minor-release.sh 26.0.1to release version 26.0.1 (you can set a second argument to trigger it on another branch, e.g.27.0.x) - Push after verification of commits and tag:
git push --tags
Manual method:
- Checkout and pull the necessary branch:
git checkout 26.0.x && git pull - Replace the version in poms (root, console, commons…), e.g.: replace
<version>26.0.1-SNAPSHOT</version>with<version>26.0.1</version> - Commit those poms
- Add a tag:
git tag 26.0.1 - Set back the version to the next snapshot, e.g.: replace
<version>26.0.1</version>with<version>26.0.2-SNAPSHOT</version> - Commit again and push with tags:
git push --tags - Follow the Todo on GitHub steps
Major release
For a major release, you'll have to update multiple repos:
georchestra/datadirgeorchestra/georchestrageorchestra/docker
1. georchestra/datadir
From the master and docker-master branches, create two branches 26.0 and docker-26.0 accordingly.
2. georchestra/georchestra
- Checkout master, pull, and launch
./update-licence-headers.shto add license headers and update dates if necessary on files, then commit. - Update migration notes in
migrations/masterand move them in a new foldermigrations/26.0. - Create a branch finishing with
.x:26.0.x - Ensure that all
migrations/masternotes are up to date:- Move them to a new folder
migrations/26.0 - Remove everything in
migrations/master
- Move them to a new folder
- Update
packageDatadirScmVersioninpom.xml - Follow the same manual method as a minor release but with these versions:
- Version will be
26.0.0 - Next snapshot will be
26.0.1-SNAPSHOT
- Version will be
- After pushing the newest branch, checkout master again and set the version to the next major release:
26.1-SNAPSHOT - Follow the Todo on GitHub steps
3. georchestra/docker
- From
master, create a branch26.0and update the necessary versions. - Update the
.gitmodulesfile to point to thedocker-26.0branch.
Other repos
When releasing a module:
- Create the release on the corresponding repo following its own release process.
- Follow the Todo on GitHub steps.