×

nf-nomad @ 0.4.4

Provider: nextflow-io
Claimed: 05 Sep 2025 07:05:53 (UTC)
Description: This plugin integrates Nextflow with HashiCorp Nomad, enabling Nextflow pipelines to submit and manage tasks on Nomad clusters with comprehensive support for job configuration, resource management, and advanced scheduling options. It solves the problem of orchestrating bioinformatics and data processing workflows across distributed Nomad infrastructure. Data engineers and bioinformaticians running Nextflow pipelines would use this to leverage existing Nomad deployments for workflow execution.
Latest version: 0.4.4
Total downloads: 6.5K View trends

Summary

This plugin implements a Nextflow executor for Hashicorp Nomad, enabling Nextflow pipelines to submit and manage tasks on Nomad clusters. It provides comprehensive support for Nomad job configuration, resource management, distributed work directories, and advanced scheduling options.

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'
    }
}

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

To run and test the plugin in a development environment:

  1. Clone the Nextflow repository:

    git clone --depth 1 https://github.com/nextflow-io/nextflow _resources/nextflow
    
  2. Generate the nextflow class path:

    cd _resources/nextflow && ./gradlew exportClasspath
    
  3. Compile the plugin alongside the Nextflow code:

    cd ../../ && ./gradlew compileGroovy
    
  4. Run Nextflow with the plugin:

    ./launch.sh run main.nf -plugins nf-nomad
    

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'
      ]
    ]
  }
}

Advanced process-level Nomad options with 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]]]
    ]
  }
}

To opt-in to privileged Docker jobs:

nomad {
  jobs {
    privileged = true
  }
}

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 Jun 2026 19:58:39 (UTC)
Release Notes https://github.com/nextflow-io/nf-nomad/releases/tag/0.4.4
Download URL https://registry.nextflow.io/api/v1/plugins/nf-nomad/0.4.4/download/nf-nomad-0.4.4.zip
Store URL https://public.cr.seqera.io/v2/nextflow/plugin/nf-nomad/blobs/sha256:38e975f2b9854448353a2ef1ea27f880069e0c23d083d9eb19e1a39d116dd98d
Size 4.6 MB
Checksum 06c068ffd636cf6cae65149e3923c34ab331dba110b51f05f8fc9c787918be0b1368d9dd4cc972628ab4280808a9831589515df8fc0e61417c67740ca187586c
Total downloads 0 View trends
Security Scan
Version Nextflow version Date Status Downloads
0.4.4 >=26.04.3 30 Jun 2026 19:58:39 (UTC) 0
0.5.0-edge2 >=26.04.3 30 Jun 2026 12:01:45 (UTC) 0
0.4.3 >=26.04.3 30 Jun 2026 11:03:49 (UTC) 0
0.4.2 >=26.04.3 30 Jun 2026 10:19:54 (UTC) 0
0.4.1 >=25.10.4 17 Jun 2026 08:43:43 (UTC) 355
0.5.0-edge1 >=26.04.3 07 Jun 2026 10:40:59 (UTC) 5
0.4.0 >=25.10.4 06 Jun 2026 06:42:08 (UTC) 202
0.4.0-edge8 >=25.10.4 04 Jun 2026 06:43:24 (UTC) 34
0.4.0-edge7 >=25.10.4 26 May 2026 09:52:03 (UTC) 103
0.4.0-edge6 >=25.10.4 25 May 2026 16:58:35 (UTC) 2
0.4.0-edge5 >=25.10.0 21 May 2026 14:13:53 (UTC) 24
0.4.0-edge4 >=25.10.0 11 May 2026 13:00:53 (UTC) 10
0.4.0-edge3 >=25.10.0 17 Mar 2026 15:44:41 (UTC) 4.5K
0.4.0-edge2 >=25.10.0 25 Oct 2025 17:01:39 (UTC) 53
0.4.0-edge1 >=24.10.4 12 Sep 2025 10:23:30 (UTC) 9
0.3.1 >=24.01.0-edge 08 Dec 2024 19:12:13 (UTC) 173
0.3.0 >=24.01.0-edge 20 Sep 2024 12:00:02 (UTC) 188 <