SuperAPI AI Directory

launch-workflow

Deployment & operations

View repository

Updated 10-16 09:34

About this skill

Launch Pipeline on Seqera Platform

Launch Nextflow pipeline executions on cloud (AWS, Google Cloud, Azure) and HPC clusters (Slurm, LSF, etc.) through Seqera Platform. Seqera Platform manages the target compute environment, executes the pipeline from a remote Git repository, and provides monitoring.

Requires Nextflow 26.04 or later (for the nextflow auth and nextflow launch commands).

Main Flow

  1. Configure the compute environment — select a Seqera Platform compute environment for the target cloud or cluster.
  2. Ensure the pipeline is in a remote Git repository — Seqera Platform launches pipelines from GitHub (or a compatible Git host such as GitLab or Bitbucket). If the local pipeline is not yet hosted, assist the user in setting up the repository.
  3. Upload local changes — push any uncommitted local changes to the remote so the launched run reflects the user's current code.
  4. Launch with nextflow launch — submit the pipeline by passing the Git repository URL and the expected parameters.

Step 1: Authenticate with Seqera Platform

Check whether the user is already authenticated:

nextflow auth status

If not authenticated, sign in:

nextflow auth login

This opens a browser for authentication. Wait for the user to complete the login flow before proceeding.

Step 2: Configure the Compute Environment

List available compute environments using the Seqera API:

call_seqera_api(
  service: "platform",
  api_name: "platform_list_compute_envs",
  parameters: {}
)

Selecting the compute environment:

  1. Present the available compute environments to the user (name, platform type, region/cluster).
  2. If multiple environments are available, ask the user which one to use.
  3. If only one is available, propose it and ask for confirmation.
  4. Confirm the selected compute environment with the user before launching.

Step 3: Ensure the Pipeline Is in a Remote Git Repository

Seqera Platform launches pipelines from a remote Git URL — it cannot launch directly from a local path. Verify the pipeline directory is a Git repository connected to a remote on GitHub (or a compatible host like GitLab or Bitbucket).

Check the current state:

git remote -v
git status

If the pipeline is not yet a Git repository or has no remote, assist the user in setting it up:

  1. Initialize the repository if needed:
    git init
    git add .
    git commit -m "Initial pipeline commit"
    
  2. Help the user create a remote repository (e.g., on GitHub via gh repo create) or ask for an existing remote URL.
  3. Add the remote and push:
    git remote add origin <repo-url>
    git push -u origin main
    

Step 4: Upload Local Changes

Before launching, push any local changes so the remote reflects the code that should run:

git status
git add <files>
git commit -m "<message>"
git push

If the working tree is clean and the local branch is in sync with the remote, skip this step.

Step 5: Launch the Pipeline

Use nextflow launch with the Git repository URL and parameters:

nextflow launch <git-repo-url> \
  -r <revision> \
  --input <input> \
  --outdir <outdir> \
  [additional --params...]

Examples

Launch a pipeline from GitHub:

nextflow launch https://github.com/org/pipeline \
  -r main \
  --input samplesheet.csv \
  --outdir s3://bucket/results

Launch an nf-core pipeline:

nextflow launch https://github.com/nf-core/rnaseq \
  -r 3.14.0 \
  --input samplesheet.csv \
  --outdir s3://bucket/results \
  --genome GRCh38

Key options

Option Description
-r <revision> Pipeline version, branch, or tag
--input Input samplesheet or data
--outdir Output directory (cloud storage when running on cloud CEs)
-params-file params.yml Parameters file
-resume Resume a previous execution

Step 6: Monitor the Execution

nextflow launch returns a run URL on Seqera Platform. Present this URL to the user so they can monitor progress in the Platform UI.

Critical Rules

  1. AUTHENTICATE first — check nextflow auth status before attempting to launch.
  2. CONFIRM the compute environment — always show the user the selected CE before launching.
  3. REQUIRE a remote Git repository — the pipeline must be hosted on GitHub or a compatible Git host. If not, help the user set it up before launching.
  4. PUSH local changes first — the launched run uses the remote code, so local edits must be committed and pushed.
  5. PASS the Git repository URL to nextflow launch, not a local path.
  6. PIN the revision — always use -r to target a specific branch, tag, or commit for reproducibility.
  7. USE cloud storage for --outdir when the target CE runs on a cloud platform (s3://, gs://, az://).
  8. PRESENT the run URL returned by nextflow launch so the user can monitor the run.