Skip to content
name: Check Multiple Workflows
on:
push:
branches: [master, cylc-8]
pull_request:
branches: [master, cylc-8]
workflow_dispatch:
schedule:
- cron: "37 03 1,11,21 * *"
jobs:
check_workflow:
name: Check ${{ matrix.workflow }}
runs-on: ubuntu-latest
strategy:
matrix:
workflow: [clock-trigger, crontab_replacement, custom_memory_over_time, data-retrieve-first, five-day-collector, gui-demo, optional-outputs, queues, return-info, set_platform_from_CLI, strange-parameters]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Python
uses: actions/setup-python@v3
- name: Install dependencies
run: pip install cylc-flow
- name: Cylc Lint ${{ matrix.workflow }}
run: |
ls ${HOME}
tree ${HOME}/work
cylc lint --color=always ${HOME}/work/workflows/workflows/"${{ matrix.workflow }}"
- name: Cylc validate ${{ matrix.workflow }}
run: |
if [[ -f ${HOME}/workflows/${{ matrix.workflow }}/rose-suite.conf ]]; then
awk '$0 ~ "=" {print $0}' ${HOME}/work/workflows/workflows/${{ matrix.workflow }}/rose-suite.conf > cylc.conf
cylc validate --color=always ${HOME}/work/workflows/workflows/${{ matrix.workflow }} --set-file=cylc.conf
else
cylc validate --color=always ${HOME}/work/workflows/workflows/${{ matrix.workflow }}
fi