An action to install Nextflow into a GitHub Actions workflow and make it available for subsequent steps.
name: Example workflow
on: push
jobs:
example:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: nf-core/setup-nextflow@v2
- run: nextflow run ${GITHUB_WORKSPACE}All inputs are optional! 😎 By default, this action will install the latest stable release of Nextflow. You can optionally pick a different version, or choose to install all versions.
default:
latest
A version string to specify the version of Nextflow to install. This version number will try to resolve using npm's semantic versioning, so
version: 21version: 21.10version: 21.10.6
will all download Nextflow version 21.10.6 as of 13 June 2022. Since Nextflow does not use true semantic versioning, you should always specify at least the minor version (e.g. version: 21.10).
Edge releases are resolved as pre-release, see https://github.com/npm/node-semver#prerelease-tags for more details. In short, in nearly all cases, passing an -edge release to this action will need to specify the exact edge release targeted.
There are three (technically four) aliases to assist in choosing up-to-date Nextflow versions.
-
version: latest-stable(aliasversion: latest)This will download the latest stable release of Nextflow.
-
version: latest-edgeThis will download the latest edge release of Nextflow. Note that edge releases may be older than the latest stable release. See nextflow-io/nextflow#2467
-
version: latest-everythingThis will download the latest release of Nextflow, regardless of stable/edge status.
default:
false
A boolean deciding whether to download the "all versions" distribution of Nextflow. May be useful for running tests against multiple versions downstream.
default: none
Nextflow secrets to set, specified as KEY=VALUE pairs (one per line).
VALUE will only be logged as a masked value.
Typically, VALUE will be a GitHub repository secret:
- uses: nf-core/setup-nextflow@v2
with:
secrets: |
MY_SECRET=${{ secrets.MY_GITHUB_SECRET }}
ANOTHER_SECRET=${{ secrets.ANOTHER_GITHUB_SECRET }}These are equivalent to running nextflow secrets set MY_SECRET <value> before your workflow steps.
There are no outputs from this action.
You may be asking, why not just a few yaml lines?
- name: Install Nextflow
env:
NXF_VER: ${{ matrix.NXF_VER }}
run: |
wget -qO- get.nextflow.io | bash
sudo mv nextflow /usr/local/bin/The versioning. From the Nextflow install script you can't get latest-edge or latest-everything for example.