name: CWL conformance on: push: paths-ignore: - 'client/**' - 'doc/**' - 'lib/galaxy_test/selenium/**' - 'packages/**' pull_request: paths-ignore: - 'client/**' - 'doc/**' - 'lib/galaxy_test/selenium/**' - 'packages/**' env: GALAXY_TEST_DBURI: 'postgresql://postgres:postgres@localhost:5432/galaxy?client_encoding=utf8' concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: test: name: Test if: ${{ false }} runs-on: ubuntu-latest continue-on-error: ${{ startsWith(matrix.marker, 'red') }} strategy: fail-fast: false matrix: python-version: ['3.9'] marker: ['green', 'red and required', 'red and not required'] conformance-version: ['cwl_conformance_v1_0'] #, 'cwl_conformance_v1_1', 'cwl_conformance_v1_2'] services: postgres: image: postgres:13 env: POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres POSTGRES_DB: postgres ports: - 5432:5432 steps: - uses: actions/checkout@v4 with: path: 'galaxy root' persist-credentials: false - name: Read Node.js version id: node-version run: echo "version=$(cat 'galaxy root/client/.node_version')" >> $GITHUB_OUTPUT - uses: actions/setup-node@v4 with: node-version: ${{ steps.node-version.outputs.version }} cache: 'yarn' cache-dependency-path: 'galaxy root/client/yarn.lock' - uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} cache: 'pip' cache-dependency-path: 'galaxy root/requirements.txt' - name: Get full Python version id: full-python-version shell: bash run: echo "version=$(python -c 'import sys; print("-".join(str(v) for v in sys.version_info))')" >> $GITHUB_OUTPUT - name: Cache galaxy venv uses: actions/cache@v4 with: path: 'galaxy root/.venv' key: gxy-venv-${{ runner.os }}-${{ steps.full-python-version.outputs.version }}-${{ hashFiles('galaxy root/requirements.txt') }}-api - name: Run tests run: ./run_tests.sh --coverage --skip_flakey_fails -cwl lib/galaxy_test/api/cwl -- -m "${{ matrix.marker }} and ${{ matrix.conformance-version }}" working-directory: 'galaxy root' - uses: codecov/codecov-action@v3 with: flags: cwl-conformance working-directory: 'galaxy root' - uses: actions/upload-artifact@v4 if: failure() with: name: CWL conformance test results (${{ matrix.python-version }}, ${{ matrix.marker }}, ${{ matrix.conformance-version }}) path: 'galaxy root/run_cwl_tests.html'