37 lines
1.8 KiB
Markdown
37 lines
1.8 KiB
Markdown
# Distributor Source Bundle Mapping
|
|
|
|
Weatherreporter uses the source-bundle format through Distributor's
|
|
`pkg/upload.UploadFiles` helper. It does not create bundle directories or call
|
|
`pkg/bundle` directly. The helper creates a temporary bundle, writes and
|
|
validates `manifest.json`, archives it, and removes the temporary bundle when
|
|
the upload call returns.
|
|
|
|
## File Mappings
|
|
|
|
Every mapping pairs an operator-owned Markdown output with one bundle-relative
|
|
path. A single-report notification maps its published output to each rendered
|
|
path configured for that report. A batch notification combines mappings for
|
|
every included published output and rejects duplicate bundle paths.
|
|
|
|
The report source is the output selected for that command; the application does
|
|
not scan local directories. It renders notification paths after publication;
|
|
see the [operations guide](../../operations.md) and the
|
|
[Distributor adapter](../../internal/distributor-adapter.md) for the boundary.
|
|
|
|
Bundle paths must be clean, relative, slash-separated paths. They cannot be
|
|
empty or absolute, contain backslashes, empty segments, `.` or `..`, or use
|
|
`manifest.json` or `.distributor.json` as a basename. The mapped source must be
|
|
a regular file. File mapping order is preserved and affects the bundle digest.
|
|
|
|
The bundle manifest uses schema version `1`, carries the rendered bundle ID and
|
|
creation time, and records each mapped file's path, SHA-256 digest, and size.
|
|
Destination routing, publication, and Distributor-managed destination state are
|
|
not source-bundle fields.
|
|
|
|
## Compatibility Reference
|
|
|
|
The upstream canonical file-format contract is
|
|
`docs/integrations/source-bundle.md` in the Distributor repository. It defines
|
|
the complete manifest and archive format; this page records only the mapping and
|
|
path constraints Weatherreporter relies on.
|