-
Notifications
You must be signed in to change notification settings - Fork 4
ReleaseProcedure
We deploy all applications in containers.
There is always an outstanding
Alpha Release [pending]
issue. This issue is updated automatically with new commits by update.sh, which uses pykern.pkcli.github.issue_update_alpha_pending). Checks are in place to verify that the commits have all passed CI (see ci_check).
When a release is starts (below), the pending moves to a timestamped issue title using pykern.pkcli.github. Past alpha releases are aggregated into beta release issues, which are further aggregated into production release issues.
Past releases can be found by searching on:
Sirepo is released regularly as follows:
- On Monday 10:00 MDT beta is promoted and pushed to prod.
- On Monday 16:00 MDT master is built and pushed to alpha.
- On Wednesday 10:00 MDT alpha is promoted and pushed to beta.
When there are bugs, we'll try to fix them within the week. If we can't get a stable beta release by Friday, we won't push it to production, and it will have to wait a week.
When there are bugs in production after a Monday push, we'll address them immediately during the day on Monday when the developers are fresh.
If Monday is a holiday, the schedule shifts by a day, but otherwise stays the same.
The following creates or promotes a release of the radiasoft/sirepo, radiasoft/beamsim-jupyter, and radiasoft/juptyerhub Docker images. In addition, radiasoft/beamsim image is promoted, but creation of alpha is manual.
- Run one of the following:
- bash update.sh alpha sirepo
- bash update.sh beta sirepo
- bash update.sh prod sirepo
- Test services are functioning properly
- Run one of the following on cori:
- radia_run nersc-sirepo-update alpha
- radia_run nersc-sirepo-update beta
- radia_run nersc-sirepo-update prod
- Close Issue
Provide the list of apps and/or Bivio and/or bivio-perl to update.sh,
e.g. to update Bivio and Societas simultaneously:
bash update.sh alpha Societas BivioWorks the same for alpha, beta, and prod.
Build codes:
bash build-code.sh srwImages are built on bkf1 (except owncloud, see above):
bash build-docker.sh beamsimThis will tag the image with a version and also alpha, dev, and latest. You build other images similarly.
Alpha runs fully on bkf6. Update the Sirepo service configuration:
bash rsc.sh alpha sirepoBeta runs on bkf5 and one backend node:
bash rsc.sh beta sirepoIf there are no celery workers running after restart check the logs:
journalctl -u sirepo -S -2m
journalctl -t sirepo -S -2mYou need to look at both -u (--unit=UNIT) and -t
(--identifier=SYSLOG_IDENTIFIER), because the SyslogIdentifier is
systemd for standard output and error.