Project

General

Profile

Actions

Release workflow

Major release notes

Prepare

  • Tests, check coverage
  • Mypy check
  • Pylint check
  • Translations
    pybabel extract -F openatlas/translations/babel.cfg -k lazy_gettext -o openatlas/translations/messages.pot .
    pybabel update -i openatlas/translations/messages.pot -d openatlas/translations
    
  • Update version in config/default.py
  • Update model image in application and Sphinx
  • Sphinx: update manual, version, check links with uncommenting the print line in manual() at openatlas/display/util2.py
    sphinx-build ./sphinx/source/ openatlas/static/manual
    
  • Update changelog, release date
  • If new packages, add to
    • Install notes
    • Upgrade notes
    • requirements.txt
    • install/Dockerfile
  • Update upgrade.md, upgrade SQL and installation notes
  • Prepare newsletter, news

Release

  • Git branches
    • merge release_candidate to main
    • remove release_candidate
    • merge main to develop
    • raise version in develop
  • Push to GitHub
  • Upgrade demo versions, if database upgrades:
    pg_dump openatlas_demo > /var/lib/postgresql/openatlas_demo.sql
    pg_dump openatlas_demo_dev > /var/lib/postgresql/openatlas_demo_dev.sql
    
  • Test demo
  • Post news
  • Upgrade CRAWS, ACDH-CH and NHM instances
    git pull origin main
    python3 install/upgrade/database_upgrade.py
    
    • Download newest database dump
    • Send newsletter
    • Raise version in the online versions list

Post release

  • Check if GitHub tests passed (restart if not)
  • Update Redmine roadmap: close version after adding release date
  • Add news at openatlas.eu
  • Git tag
  • Push main and tags to GitHub, GitLab and Bitbucket
  • Update GitHub latest release
  • Update stats in wiki
  • Post news in chat

Updated by Alexander Watzinger 2 months ago · 80 revisions

Also available in: PDF HTML TXT