Skip to content

Neuer GEVER Release

David Erni edited this page May 7, 2020 · 39 revisions

Hier eine kurze Checkliste um einen neuen Release zu erstellen:

  • development-packages im sources.cfg überprüfen. Seit neuem sollten bis auf wenige Ausnahmen keine development-packages definiert sein. Im Moment brauchen wir opengever.maintenance und collective.js.timeago immer von Source.
  • Bei Bedarf Changelog in opengever.core zusammenlegen und via longtest checken.
  • Bevor Zug update: Upgrade-Steps von letztem zu aktuellem Release auf PostgreSQL, Oracle testen (insbes. SQL-Schema-Migrationen)
  • Neuen Release von opengever.core erstellen. Auf psc hochladen. Dabei wird neu automatisch ein Version-Pinning für opengever.core mit der erstellten Version im versions.cfg hinzugefügt und nach dem Release wieder entfernt. ⚠️ Diff von zest.releaser sorgfältig überprüfen!
  • test.onegovgever.ch mit neuer GEVER-Version aktualisieren.
    • opengever.core-Version im extends der beiden test-policies von opengever.hatchery anpassen
    • Deployments auf dem Server updaten mit update_deployment -f. Die beiden Deployments sind im gleichen Cluster und müssen nacheinander aktualisiert werden.
  • Test-Konfiguration von opengever.maintenance mit neuem Release ergänzen.
  • Bei Major-Release Release Notes auf docs.onegovgever.ch erstellen.
  • [optional] Bei Major-Release Sablon updaten, falls möglich/nötig (@siegy22 fragen)
  • [optional] Bei Major-Release Bumblebee updaten falls möglich (@siegy22 fragen)
  • [optional] Bei Major-Release Gever-Portal updaten falls möglich (@siegy22 fragen)
  • Ansible Playbook anpassen falls nötig (@siegy22 fragen, bezüglich ruby Versionen)
  • Bei einem Bugfix-Release mit backport Changelog im master aktualisieren.
  • Via Slack im #python Channel informieren (auch bei Minor, da nun relevant wegen CL-cleanup)
  • [für rc-Releases und alle nicht-Backports] opengever.core-Version im extends von opengever.ftw anpassen, und gever.4teamwork.ch aktualisieren.

Falls Releases auf pypi nicht erscheinen, muss u.U. ein CDN purge durchgeführt werden:

for ip in $(dig +short pypi.python.org); do url="https://$ip/simple/<eggname>/"; echo "Purging $url..."; curl -H 'Host: pypi.python.org' --insecure -XPURGE $url; done