...
- Activate your Skylab virtual environment, if you haven't already.
Code Block language shell source $JEDI_ROOT/venv/bin/activate
- Force install cylc-flow. Note, cylc is installed in spack-stack but it has some compatibility issues so it is easiest at the point to re-install in your venv.
Code Block language shell pip install cylc-flow --force-reinstall
(*Optional - as needeed) rsyncis required for the workflow. If awhich rsyncdoes not return this application (if one is on a brand new OrbStack machine):Code Block language shell sudo su apt install -y rsync exit- Check cylc location and test with skylab/experiments/workflow-engine-test.yaml:
Code Block language shell which cylc create_experiment.py skylab/experiments/workflow-engine-test.yaml
...
| Code Block | ||||
|---|---|---|---|---|
| ||||
[install]
[[symlink dirs]]
[[[localhost]]]
work = ${EWOK_WORKDIR}
run = ${EWOK_FLOWDIR}
[platforms]
[[localhost]]
hosts = localhost
job runner = background
global init-script = source ${JEDI_ROOT}venv/bin/activate
[[compute]]
hosts = localhost
job runner = slurm
install target = localhost
global init-script = """
source source$${JEDI_ROOT}/venv/bin/activate
export SLURM_EXPORT_ENV=ALL
export HDF5_USE_FILE_LOCKING=FALSE
ulimit -s unlimited || true
ulimit -v unlimited || true
""" |
...
- Load spack-stack modules
Code Block language shell #!/usr/bin/env bash # Initialize modules source $MODULESHOME/init/bash # Load python dependencies echo "Using SLES15 modules" module use /discover/swdev/jcsda/spack-stack/scu17/modulefiles module use /gpfsm/dswdev/jcsda/spack-stack/scu17/spack-stack-1.9.0/envs/ue-intel-2021.10.0/install/modulefiles/Core module load stack-intel/2021.10.0 module load stack-intel-oneapi-mpi/2021.10.0 module load stack-python/3.11.7 module load py-pip/23.1.2
- Load cylc module and test
Code Block language shell # Load the cylc module module use -a /discover/nobackup/projects/gmao/advda/swell/dev/modulefiles/core/ module load cylc/sles15_8.4.0 # Run cylc command cylc "$@"
- You might need to create a file called $HOME/bin/cylc, and make sure it is executable in order to run locally: chmod +x $HOME/bin/cylc
- Note, I did not have to do this when setting up and running on discover-mil with spack-stack 1.9.0 intel
- Add the example of ~/.cylc/flow/global.cylc see above for HPCs that use slurm/sbatch for job submission.
FAQ
How to remove an experiment from ecflow?
...