Add local source publication

This commit is contained in:
2026-05-31 02:21:36 +00:00
parent aeee91940d
commit e296361042
17 changed files with 1019 additions and 84 deletions

View File

@@ -3,10 +3,10 @@
## Shortest useful command
```sh
go run ./cmd/distributor validate examples/source-bundle
go run ./cmd/distributor run --config examples/local-publish.yml
```
This validates a local source bundle fixture.
This validates and publishes the example source bundle to `workspace/published/source-bundle`.
## Command overview
@@ -20,13 +20,15 @@ distributor inspect
`version` prints the application name and version. The default development version is `dev`; release builds may replace it at build time.
`run --config <path> --dry-run` loads and validates configuration, then prints a concise summary of configured pipelines and destinations. It does not discover bundles or publish files yet.
`run --config <path>` executes configured local-to-local pipelines that publish source files only.
`run --config <path> --dry-run` discovers source bundles, inspects destination state, and prints planned actions without writing files.
`validate <path>` validates a local source bundle directory or a local tree containing source bundles.
`inspect <path>` validates discovered local source bundles and prints a concise normalized summary.
`run` without `--dry-run` intentionally fails with a clear `not implemented` error until execution behavior exists.
Remote backends and HTML publication are not implemented yet.
## Flag reference
@@ -57,8 +59,14 @@ Inspect a source bundle:
go run ./cmd/distributor inspect examples/source-bundle
```
Validate a config file without publishing:
Preview local publication without writing:
```sh
go run ./cmd/distributor run --config examples/local-to-local.yml --dry-run
go run ./cmd/distributor run --config examples/local-publish.yml --dry-run
```
Publish the local example:
```sh
go run ./cmd/distributor run --config examples/local-publish.yml
```