×

nf-nomad @ 0.5.0-edge5

Provider: nextflow-io
Claimed: 05 Sep 2025 07:05:53 (UTC)
Description: This plugin enables Nextflow to execute computational tasks on HashiCorp Nomad clusters, allowing users to leverage Nomad's resource orchestration capabilities for pipeline workflows. It solves the problem of integrating Nextflow with Nomad infrastructure by providing a custom executor with support for advanced features like resource constraints, datacenter targeting, and failure handling. Bioinformatics teams and researchers using Nomad-based infrastructure would use this plugin to run their Nextflow pipelines across distributed cluster resources.
Latest version: 0.5.0-edge7
Total downloads: 7.1K View trends

Summary

This plugin implements a Nextflow executor for Hashicorp Nomad, enabling Nextflow pipelines to submit and manage tasks on Nomad clusters.

Get Started

To use this plugin in your Nextflow pipeline, add the following to your nextflow.config file:

plugins {
    id 'nf-nomad'
}

process {
    executor = 'nomad'
}

nomad {
    client {
        address = 'http://your-nomad-server:4646'
    }
}

Test environment selection

The Gradle test task supports selecting the target environment with -PtestEnv:

  • ./gradlew test → unit tests only
  • ./gradlew test -PtestEnv=mock → unit + mock tests
  • ./gradlew test -PtestEnv=local → unit + local Nomad integration tests
  • ./gradlew test -PtestEnv=oci → unit + OCI Nomad integration tests

For local integration tests, the default Nomad address is http://localhost:4646. If you need a different endpoint, override explicitly:

./gradlew test -PtestEnv=local -PnomadAddr=http://<host>:4646

Unit testing

Run the following command in the project root directory (where the file settings.gradle is located):

./gradlew check

Examples

The following example demonstrates how to configure a Nextflow pipeline to target a specific process to run on Nomad with customized datacenters and resource limits:

// nextflow.config
plugins {
  id 'nf-nomad'
}

process {
  executor = 'nomad'
  
  withName: runAlignment {
    nomadOptions = [
      datacenters: ['dc-analytics'],
      priority: 'high',
      resources: [
        cores: 8,
        memoryMax: '32 GB'
      ]
    ]
  }
}

Process-level Nomad options also support comprehensive configuration:

process {
  withName: sayHello {
    nomadOptions = [
      datacenters: ['dc1', 'dc2'],
      namespace: 'bio',
      constraints: { node { unique = [name: params.RUN_IN_NODE] } },
      affinity: [attribute: '${meta.workload}', operator: '=', value: 'batch', weight: 25],
      meta: [owner: 'team-x', step: 'align'],
      shutdownDelay: '15s',
      failures: [
        restart: [attempts: 1, delay: '5s', mode: 'fail'],
        reschedule: [attempts: 2, delay: '10s']
      ],
      volumes: [[type: 'host', name: 'ref-data', path: '/ref', readOnly: true]],
      secretsPath: 'secret/projects/team-x',
      secrets: ['MY_ACCESS_KEY', 'MY_SECRET_KEY'],
      spread: [name: 'node.datacenter', weight: 50, targets: ['us-east1': 70, 'us-east2': 30]],
      priority: 'high',
      resources: [memoryMax: '64 GB', cores: 4, device: [[name: 'nvidia/gpu', count: 1]]]
    ]
  }
}

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

Nextflow version >=26.04.3
Depends On -
Release Date 30 Aug 2026 10:30:00 (UTC)
Release Notes https://github.com/nextflow-io/nf-nomad/releases/tag/0.5.0-edge5
Download URL https://registry.nextflow.io/api/v1/plugins/nf-nomad/0.5.0-edge5/download/nf-nomad-0.5.0-edge5.zip
Store URL https://public.cr.seqera.io/v2/nextflow/plugin/nf-nomad/blobs/sha256:f6130373cfcacdc9d0140d5319dc9fe324332fc9da69a4b4830cae8553df3d38
Size 4.6 MB
Checksum 4fb6528a79ff45059d01bb560faee327f4b42833d22a17363ac2096f74e7b438284b5c439b4bdc5cb8a483a157e69fb2134a483e881f605cc2052b27478344ee
Total downloads 22 View trends
Security Scan
Version Nextflow version Date Status Downloads
0.5.0-edge7 >=26.04.3 04 Sep 2026 18:31:57 (UTC) 28
0.5.0-edge6 >=26.04.3 31 Aug 2026 12:54:29 (UTC) 17
0.5.0-edge5 >=26.04.3 30 Aug 2026 10:30:00 (UTC) 22
0.5.0-edge4 >=26.04.3 28 Aug 2026 05:26:05 (UTC) 41
0.5.0-edge3 >=26.04.3 03 Aug 2026 15:14:20 (UTC) 12
0.4.4 >=26.04.3 30 Jun 2026 19:58:39 (UTC) 62
0.5.0-edge2 >=26.04.3 30 Jun 2026 12:01:45 (UTC) 4
0.4.3 >=26.04.3 30 Jun 2026 11:03:49 (UTC) 5
0.4.2 >=26.04.3 30 Jun 2026 10:19:54 (UTC) 3
0.4.1 >=25.10.4 17 Jun 2026 08:43:43 (UTC) 778
0.5.0-edge1 >=26.04.3 07 Jun 2026 10:40:59 (UTC) 8
0.4.0 >=25.10.4 06 Jun 2026 06:42:08 (UTC) 205
0.4.0-edge8 >=25.10.4 04 Jun 2026 06:43:24 (UTC) 36
0.4.0-edge7 >=25.10.4 26 May 2026 09:52:03 (UTC) 105
0.4.0-edge6 >=25.10.4 25 May 2026 16:58:35 (UTC) 4
0.4.0-edge5 >=25.10.0 21 May 2026 14:13:53 (UTC) 26
0.4.0-edge4 >=25.10.0 11 May 2026 13:00:53 (UTC) 12