Skip to main content

Module release

Module release 

Source
Expand description

Held deliveries and dre release: a maker/checker step between rendering and sending.

A destination with hold: true (or every destination, with dre run --hold) isn’t delivered by the run: the run renders everything, delivers the rest, and records each held delivery in held.json in its run folder, with the files’ SHA-256. dre release <report> --run <id> delivers them later from that folder’s files, byte for byte what was reviewed: it never re-renders or re-queries, refuses a file that changed since, takes the Binding’s lock, and never sends a delivery twice. Each release is its own run folder (release_of), recording who released what, and when.

Structs§

Held
HeldEntry
One held delivery: the destination entry as rendered (unmasked: it’s what will be sent) and the files it sends.
HeldFile
ReleaseOptions
What dre release was asked to do.
ReleaseOutcome
How a release went.

Constants§

HELD
held.json in a run folder.
RELEASED
In a release’s run folder: every entry released so far, this release’s included.
SCHEMA_VERSION

Functions§

held_file
A file and its SHA-256 now, for a held delivery.
release
Deliver run opts.run_id’s held deliveries.
sha256_file
write_held