-
Notifications
You must be signed in to change notification settings - Fork 2
Running suites
Add path on ceto for rose and cylc
PATH=$PATH:/Software/local/bin/:/Code/rose-master/bin
Also messaging with CETO needs to be configured. The default cylc messaging system is HTTPS which doesn't work from CETO. Instead it need to be setup to use interactive ssh, which is complicated by the CETO worker nodes not being able to directly ssh out of CETO the steps are:
-
Set up passwordless ssh from the host machine to CETO
-
Set the cylc messaging service to ssh rather than default (https). This is a setting in /opt/cylc/etc/global.rc which should already be set.
-
set up ssh'ing to phorycs from the work nodes via ceto2. Add the following to the users .ssh/config on CETO:
host phorcys.npm.ac.uk hostname phorcys.npm.ac.uk proxycommand ssh ceto2.ceto.npm.ac.uk "nc %h %p"
Then make sure you can ssh passwordless in by running on CETO ssh-keygen (if you don't already have a key) and ssh-copy-id phorcys.npm.ac.uk (which should add the key to ~/.ssh/authorized_keys on phorcys).
Copy bin directory. The binaries are not included in the git repositories, they should be copied in to a bin folder in each suite directory
The suite home directory is the top directory of each suite, i.e. the one with rose-suite.conf and suite.rc in
The suite name is the name of the home directory
To get a suite running navigate to the suite directory home and type:
rose suite-run
This will automatically open the cylc suite run gui. If you shut this and want to open it again then:
gcylc [suite name]
The actual work for a suite will be done in ~/cylc-run/[suite name]/work/[cycle point]/[app name]/ or in ~/cylc-run/[suite name]/share/cycle/[cycle point]/ which is the shared data directory for each cycle of a suite.
If the suite has been previously running then you may need to clean up existing data by running in the home directory:
rose suite-clean
If there are inter-suite dependencies then it is possible there will be open log files which aren't cleaned in this process and require manual nuking of the run directios in ~/cylc-run/[suite name]. To do this you might need to stop active processes (the intersuite triggers) using lsof +D [suite name] | awk '{print $2}' | tail -n +2 | xargs kill -9