38 lines
1.9 KiB
Markdown
38 lines
1.9 KiB
Markdown
# Simple consumer
|
|
|
|
This example imports `go.maximumdirect.net/ckconfig` and
|
|
`go.maximumdirect.net/commandkit`; the ckconfig v0.4.0 candidate uses core
|
|
v0.4.0, ConfigKit v1.1.0, and Go 1.27.0. Set `GOWORK=off GOTOOLCHAIN=local`
|
|
for the commands below.
|
|
|
|
Run the maintained example with:
|
|
|
|
```sh
|
|
go run . config show
|
|
go run . config show --config fixtures/before.yml --verbose
|
|
go run . config show --config fixtures/before.yml --quiet
|
|
go run . config explain --list --under /schema
|
|
go run . config show --path /greeting --set '/greeting="Hi"'
|
|
go run . config diff --config fixtures/before.yml --against-config fixtures/after.yml
|
|
go run . config diff --set '/greeting="Hi"' --details --check
|
|
go run . config validate --config fixtures/invalid.yml --details --severity error
|
|
go run . config sources --config fixtures/invalid.yml --source-id source-1
|
|
go run . greet
|
|
go run . greet --count=0 --tag=first --tag second
|
|
```
|
|
|
|
The `config` family comes from one typed ConfigKit scope. The custom `greet`
|
|
command uses CommandKit's typed bindings and shows the difference between an
|
|
omitted `--count` and an explicitly supplied zero, plus ordered repeated tags.
|
|
With no `--config`, application settings use the in-memory default. A supplied
|
|
configuration and overlay are passed to ConfigKit unchanged. The comparison
|
|
command loads the two local fixtures and reports `changes.greeting: Goodbye`.
|
|
The before fixture uses schema version 1, which ConfigKit reports as a provider
|
|
warning in verbose mode. Ordinary mode hides the warning while preserving the
|
|
effective YAML report; quiet mode suppresses that report.
|
|
The invalid fixture demonstrates a failed-load report and captured source
|
|
inventory; `source-1` is the ID from that fixture's acquisition. The scope opts
|
|
in to transient overrides and passes them into its normal ConfigKit load. The
|
|
diff example compares an overridden left side with ordinary configuration on
|
|
the right and returns status 3 because the values differ.
|