There are various checks we might want to perform against Cylc workflow projects, e.g:
- We could run
cylc lint
on the workflow to make sure it satisfies style recommendations. - We might want to check the workflow is valid with the latest Cylc version using
cylc validate
. - We could check any Rose configuration are valid using
rose macro -V
.
To make running such checks in GitHub actions, we have provided a setup-cylc action that will install Cylc for use in your CI jobs. At present it has two options:
cylc_version
- optional: specify the version of Cylc 8 to install.cylc_rose
- optional: install cylc-rose and metomi-rose.
Here’s an example job definition showing how setup-cylc can be used:
jobs:
test:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Cylc
uses: cylc/setup-cylc@v1
with:
cylc_rose: true
- name: Run Cylc Tests
run: |
cylc validate ./my-workflow
cylc lint ./my-workflow
- name: Run Rose Tests
run: |
rose macro -V -C ./my-workflow
rose metadata-check -C ./my-workflow/meta
rose metadata-check -C ./my-workflow/app/my-app/meta
For more information, see the Setup Cylc action on GitHub Marketplace: