I’d appreciate a hint. On my old production system I am running all my operational suites with cylc-7.8.1 and rose-2019.01.0. These suites will soon move over to a new production system, where I will only install the latest versions of cylc-7.9.1 and rose-2019.01.3. To smooth the transition I would like to test the suites on the old system and upgrade everything.
In terms of software installation I have completed everything. On every system (old and new, cylc-hosts and HPC-hosts) the versions are reported as
$ cylc --version
7.9.1
$ rose --version
Rose 2019.01.3 (/opt/rose/rose-2019.01.3)
Now to my question. How do I upgrade the running suites with the least amount of disruption?
I stopped a suite and restarted it, but the suite still picks up the old cylc version:
$ rose suite-run --restart
[INFO] export CYLC_VERSION=7.8.1
…
What’s the best way to get the suite to pick up the new cylc-rose versions (which doesn’t requite a full stop/cold-start)?
Switching versions of Rose/cylc for a running suite
First you need to stop the suite via the GUI or with: cylc stop --name=SUITE, where SUITE is the suite name. I stopped the suite from the gcontrol window.
Wait for the suite to complete cleanly:
Look at the end of ~/cylc-run/SUITE/log/suite/log, which should tell you the suite is shutting down with a reason.
Modify the CYLC_VERSION and ROSE_VERSION variables in ~/cylc-run/SUITE/log/rose-suite-run.conf.
Ensure the Cylc and Rose versions in your current environment match the version you are trying to use. Run rose --version and cylc --version.
Then restart the suite with: rose suite-restart --name=SUITE. (Note you should not run rose suite-run --restart).
However, if you are using Cylc with Rose there are some extra steps as Rose will try and restart a suite continuing with the old version of Cylc. Rose uses the CYLC_VERSION and ROSE_VERSION environment variables in the log/rose-suite-run.conf file so you will need to edit these before restarting. Also check the suite.rc as you may find these environment variables set there too.
$ rose suite-shutdown
$ rose suite-restart
This disparity will disappear in Cylc8 making the upgrade process a lot easier.