nf-snapshot @ 0.1.0
Summary
nf-snapshot checks the files a Nextflow run publishes against a snapshot file committed to the pipeline repository, the way nf-test snapshots work, but for one full-size run. If the outputs differ, the run exits with status 1.
Get Started
Declare the plugin at the top level of nextflow.config, then enable it in a profile for each test that has a snapshot. Nextflow 26.10.0 did not load the plugin when it was declared inside a profile. The plugin does nothing unless snapshot.enabled is set.
Create the snapshot, then commit it:
NXF_SNAPSHOT_UPDATE=true nextflow run . -profile test_full
Later runs verify against it:
nextflow run . -profile test_full
Examples
Configuration example:
plugins { id 'nf-snapshot@0.1.0' }
profiles {
test_full {
snapshot {
enabled = true
file = 'tests/snapshots/test_full.json'
ignore = ['pipeline_info/**']
nameOnly = ['**/*.html', '**/*.log']
}
}
}
Snapshot format example:
{
"files": {
"multiqc/multiqc_report.html": null,
"salmon/sample1/quant.sf": "9e107d9d372bb6826bd81d3542a419d6"
}
}
Example output when differences are detected:
nf-snapshot: outputs differ from /path/to/tests/snapshots/test_full.json
missing: salmon/sample2/quant.sf
changed: multiqc/multiqc_data/multiqc_general_stats.txt
unexpected: salmon/sample3/quant.sf
License
Licensed under the Apache License, Version 2.0. See LICENSE.
| Nextflow version | >=26.04.6 |
|---|---|
| Depends On | - |
| Release Date | 16 Oct 2026 13:15:00 (UTC) |
| Release Notes | - |
| Download URL | https://registry.nextflow.io/api/v1/plugins/nf-snapshot/0.1.0/download/nf-snapshot-0.1.0.zip |
| Store URL | https://public.cr.seqera.io/v2/nextflow/plugin/nf-snapshot/blobs/sha256:993444f2ba8de3b7dcc19c26b76a2e5ff912092b8c8a325b1733a9c0fff457d2 |
| Size | 24.4 KB |
| Checksum | 6dd15ed4bdf9c4433b73afc7d292403c12f1bad6a4a8b33f187b5e363c06a16d7adaacee296643d8dd490e9052282edae68522b6c0ceaffae70a459c1ea1e78e |
| Total downloads | 66 View trends |
| Security Scan |