noqtis-pack —
start, build and check a reproducibility bundle
noqtis pack init |
[-t | --template
plain | r |
python] dir |
noqtis pack build |
-k key
[-p key.pub]
[--format 1 |
2] [--lock
file ...] [-o
file] [-f]
[--no-files] dir |
noqtis pack check |
[-p key.pub]
dir | file |
noqtis pack unpack |
file dir |
A reproducibility bundle is a capsule
(noqtis-capsule(5))
whose data record
(noqtis-data(5))
holds the environment of the run and the digests of its lock files, sealed,
and shipped as one file. Each action is a command the tool already has, run
in order.
init
- Start a bundle in dir (made when it is not there)
from a template: the folders data/, the code
folder (code/, R/ or
src/) and output/, a
README.md that says what goes where and how the
lock file is made (renv.lock from
‘
renv::snapshot()’,
uv.lock), kept when there is one, and an empty
data record. A folder with a data record is refused.
build
- Record the environment
(noqtis-env(1);
--lock as there), seal
(noqtis-seal(1);
-k, -p,
--format as there), and with
-o write the bundle file
(noqtis-export(1)
--as bundle;
-f replaces a file there,
--no-files leaves out every file but the data
record).
check
- Before shipping: the capsule
(noqtis-check(1),
with
-p), its data record
(noqtis-data(1)
check: sources, schemas, chunks, and each lock
file against the digest env recorded), and that
the environment and at least one lock file are recorded.
file is a bundle; a bundle without its files has no
data to check, and fails here.
unpack
- Read the bundle file into the new folder
dir
(nqdunpack(3)),
refusing it whole for anything malformed, and for any path that would
leave dir. Check the folder after with
noqtis-check(1).
- 0
- Done; for
check, every check passed.
- 1
- A check failed, or the bundle is malformed.
- 2
- A usage error, or a file or folder that cannot be read or written.
$ noqtis pack init --template r study
$ noqtis data add --url https://example.org/a.csv study data/a.csv
$ noqtis pack build -k me -o study.nqb study
$ noqtis pack check -p me.pub study.nqb