DEVELOPER GUIDE

Publish a release

Publication procedure

  • Update merge request template (Settings / Merge Requests) to point to a new changelog wiki page
  • Check if OGSTools version in Tests/Data/pyproject.toml is current and compatible
    • Check for corresponding OGSTools release in web/layouts/_partials/header.html (tools_url).
  • Update binder_tag in Python testrunner.py and update binder repo accordingly.
  • Run python scripts/python/do-release.py [NEW_VERSION]
  • Update CITATION.cff, create a commit, tag and push (see script output)
  • A new release is automatically created on GitLab
    • Fill in the release notes from the Wiki
  • Copy release binaries and container images from CI job to OGS S3 storage to a subdirectory containing the tag name at https://vip.s3.ufz.de/ogs/public/binaries/ogs6
    • Create folder mc mb ogs/ogs/public/binaries/ogs6/TAG/
    • Copy mc cp ogs/ogs/public/container/ogs/master/* ogs/ogs/public/binaries/ogs6/TAG/
  • Create a release on GitHub mirror (ufz/ogs)
  • Check if a Zenodo release is automatically issued
  • Update Zenodo entry with correct authors (obtained via git shortlog -sne [new_version]...[previous_version])
  • Run python scripts/python/post-release.py and commit and create a discourse announcement post
  • Set milestone on expired issues and merge requests

This article was written by Lars Bilke. If you are missing something or you find an error please reach out to us on our forum.
Generated with Hugo 0.164.0 in CI job 825193 | Last revision: April 20, 2026
Commit: refactor(MeshLib): remove PropertyVector::push_back 870422dde  | Edit this page on