Cylc logo

Cylc (said ‘silk’) is a work flow engine required by Rose (similar to work load managers like Torque and LSF). There is a help website for Cylc where you can post issues. By the way, be aware that Cylc uses a particular set of terms with specific meanings (e.g. 'active task', 'workflow', 'daemon') listed in the official Cylc glossary

For general information on Rose and Cylc as used in the UK's UM/Momentum system, see here. Official Cylc tutorials are at Cylc tutorials. The tutorials are designed to be self led, but if you need help learners can ask questions at http://cylc.discourse.group .

 

STEP 0: Check whether Cylc is already installed.

[If you are on JASMIN, make sure you have the following line in your .bashrc file:

export PATH=$PATH:/apps/jasmin/metomi/bin

or, if on another platform, load in whatever module required to have Cylc. Then...]

 

cylc check-software


If Cylc has already been installed on your system, this will give you a message saying "Core requirements: OK". You don't need "Full-functionality": partial functionality is fine (e.g. you might be missing the PyGraphviz, Sphinx or PyGTK libraries, but this is OK). It'll also warn you if you are missing Python itself (you need vn>=2.6).

 

STEP 1 *** SKIP THIS STEP IF CYLC ALREADY INSTALLED ***:

If Cylc is not globally available, then you will need to make a local installation. Install Cylc using these commands from a bash terminal:

   mkdir ~/.local

   cd ~/.local

   git clone https://github.com/cylc/cylc.git

   cd cylc

   git tag -l

#Install the latest version available on that list, e.g.:

   git checkout tags/8.4.2

   cd ..

#(No need to do make).

 

STEP 2 *** SKIP THIS STEP IF CYLC ALREADY INSTALLED ***:

Now you need to append the Cylc command set to your library. This must be done every time you log on, so best to add the following line to the end of your ~/.bashrc file to accomplish this:

   export PATH=$HOME/.local/cylc/bin:$PATH

   chmod -R 755 ~/.local

Run your .bashrc file (or log off and log in again):

   . ~/.bashrc

 

STEP 3: Now check the installation:

   cylc --version

(being in 'detached HEAD' state is fine)

   cylc check-software

(you only need the core functionality to be OK).

 

 

All done: Cylc should be installed (typing CYLC_EXEC=$(which cylc);echo $CYLC_EXEC will tell you where it is installed, if you are interested).