21 lines
1.4 KiB
Markdown
21 lines
1.4 KiB
Markdown
# distributor
|
|
|
|
`distributor` validates manifested report bundles, plans destination updates, and publishes selected source files or generated HTML outputs to configured destinations.
|
|
|
|
It is a local-first Go CLI for report distribution. A pipeline reads one source bundle tree, validates `manifest.json`, fans out to one or more local, SSH/SFTP, or S3-compatible destinations, records destination state in `.distributor.json`, and can also accept authenticated tar or tar.gz uploads through the HTTP upload server.
|
|
|
|
Run the maintained local example:
|
|
|
|
```sh
|
|
go run ./cmd/distributor run --config examples/local-publish.yml
|
|
```
|
|
|
|
Go producers can use `gitea.maximumdirect.net/eric/distributor/pkg/bundle` to build, write, parse, and validate local source bundles with the same manifest contract used by the CLI. They can use `gitea.maximumdirect.net/eric/distributor/pkg/upload` to build or validate a bundle and submit it to `distributor serve` with bearer authentication and idempotency keys. See [Source bundle contract](docs/integrations/source-bundle.md) and [HTTP upload contract](docs/integrations/http-upload.md).
|
|
|
|
- [CLI reference](docs/cli.md)
|
|
- [Configuration reference](docs/config.md)
|
|
- [Operations guide](docs/operations.md)
|
|
- [Troubleshooting](docs/troubleshooting.md)
|
|
- [Integration contracts](docs/integrations/source-bundle.md)
|
|
- [Development architecture](docs/policy/architecture.md)
|