chore: Update nf-core/methylseq to version 4.3.0dev #300
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Run nf-tests | |
| on: | |
| pull_request: | |
| paths-ignore: | |
| - "docs/**" | |
| - "**/meta.yml" | |
| - "**/*.md" | |
| - "**/*.png" | |
| - "**/*.svg" | |
| release: | |
| types: [published] | |
| workflow_dispatch: | |
| inputs: | |
| runners: | |
| description: "Runners to test on" | |
| type: choice | |
| options: | |
| - "ubuntu-latest" | |
| - "self-hosted" | |
| default: "ubuntu-latest" | |
| # Cancel if a newer run is started | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
| cancel-in-progress: true | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| NFT_VER: "0.9.3" | |
| NFT_WORKDIR: "~" | |
| NXF_ANSI_LOG: false | |
| NXF_SINGULARITY_CACHEDIR: ${{ github.workspace }}/.singularity | |
| NXF_SINGULARITY_LIBRARYDIR: ${{ github.workspace }}/.singularity | |
| # renovate: datasource=github-releases depName=nextflow-io/nextflow versioning=semver | |
| NXF_VER: "24.10.5" | |
| jobs: | |
| get-shards: | |
| runs-on: | |
| - runs-on=${{ github.run_id }}-nf-test-get-shards | |
| - runner=2cpu-linux-x64 | |
| name: "Get Shards" | |
| outputs: | |
| shard: ${{ steps.set-shards.outputs.shard }} | |
| total_shards: ${{ steps.set-shards.outputs.total_shards }} | |
| steps: | |
| - name: Clean Workspace # Purge the workspace in case it's running on a self-hosted runner | |
| run: | | |
| ls -la ./ | |
| rm -rf ./* || true | |
| rm -rf ./.??* || true | |
| ls -la ./ | |
| - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5 | |
| with: | |
| fetch-depth: 0 | |
| - name: run nf-test-shard action | |
| id: set-shards | |
| uses: ./.github/actions/nf-test-shard | |
| env: | |
| NFT_VER: ${{ env.NFT_VER }} | |
| with: | |
| tags: "cpu" | |
| max_shards: 15 | |
| - name: Set outputs | |
| id: set-outputs | |
| run: | | |
| echo "shard=${{ steps.set-shards.outputs.shard }}" >> $GITHUB_ENV | |
| echo "total_shards=${{ steps.set-shards.outputs.total_shards }}" >> $GITHUB_ENV | |
| nf-test: | |
| name: "Test | ${{ matrix.profile }} | ${{ matrix.shard }} | ${{ matrix.NXF_VER }} | ${{ matrix.filters }}" | |
| needs: [get-shards] | |
| runs-on: # use self-hosted runners | |
| - runs-on=${{ github.run_id }}-nf-test | |
| - runner=4cpu-linux-x64 | |
| - image=ubuntu22-full-x64 | |
| env: | |
| NXF_VER: ${{ matrix.NXF_VER }} | |
| NXF_ANSI_LOG: false | |
| # Only run on push if this is the nf-core dev branch (merged PRs) | |
| # and number of shards is greater than 0 | |
| if: | | |
| needs.get-shards.outputs.total_shards > 0 && | |
| ( | |
| github.event_name != 'push' || | |
| ( github.event_name == 'push' && github.repository == 'nf-core/methylseq' ) | |
| ) | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| profile: [conda, docker, singularity] | |
| shard: ${{ fromJson(needs.get-shards.outputs.shard) }} | |
| NXF_VER: | |
| - "25.04.0" | |
| - "latest-everything" | |
| filters: [pipeline] | |
| steps: | |
| - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5 | |
| with: | |
| fetch-depth: 0 | |
| - name: Run nf-test | |
| id: run_nf_test | |
| uses: ./.github/actions/nf-test | |
| continue-on-error: ${{ matrix.NXF_VER == 'latest-everything' }} | |
| env: | |
| NFT_WORKDIR: ${{ env.NFT_WORKDIR }} | |
| NXF_VERSION: ${{ matrix.NXF_VER }} | |
| with: | |
| profile: ${{ matrix.profile }} | |
| shard: ${{ matrix.shard }} | |
| total_shards: ${{ needs.get-shards.outputs.total_shards }} | |
| filters: ${{ matrix.filters }} | |
| tags: "cpu" | |
| - name: Report test status | |
| if: ${{ always() }} | |
| run: | | |
| if [[ "${{ steps.run_nf_test.outcome }}" == "failure" ]]; then | |
| echo "::error::Test with ${{ matrix.NXF_VER }} failed" | |
| # Add to workflow summary | |
| echo "## ❌ Test failed: ${{ matrix.profile }} | ${{ matrix.NXF_VER }} | Shard ${{ matrix.shard }}/${{ needs.get-shards.outputs.total_shards }}" >> $GITHUB_STEP_SUMMARY | |
| if [[ "${{ matrix.NXF_VER }}" == "latest-everything" ]]; then | |
| echo "::warning::Test with latest-everything failed but will not cause workflow failure. Please check if the error is expected or if it needs fixing." | |
| fi | |
| if [[ "${{ matrix.NXF_VER }}" != "latest-everything" ]]; then | |
| exit 1 | |
| fi | |
| fi | |
| confirm-pass: | |
| runs-on: | |
| - runs-on=${{ github.run_id }}-confirm-pass | |
| - runner=2cpu-linux-x64 | |
| needs: [nf-test] | |
| if: always() | |
| steps: | |
| - name: One or more tests failed (excluding latest-everything) | |
| if: ${{ contains(needs.*.result, 'failure') }} | |
| run: exit 1 | |
| - name: One or more tests cancelled | |
| if: ${{ contains(needs.*.result, 'cancelled') }} | |
| run: exit 1 | |
| - name: All tests ok | |
| if: ${{ contains(needs.*.result, 'success') }} | |
| run: exit 0 | |
| - name: debug-print | |
| if: always() | |
| run: | | |
| echo "::group::DEBUG: `needs` Contents" | |
| echo "DEBUG: toJSON(needs) = ${{ toJSON(needs) }}" | |
| echo "DEBUG: toJSON(needs.*.result) = ${{ toJSON(needs.*.result) }}" | |
| echo "::endgroup::" |