Demonstrate config diff in simple consumer

This commit is contained in:
2026-10-11 21:52:47 +00:00
parent 18ee987a88
commit 3cbb1f35b0
6 changed files with 109 additions and 8 deletions

View File

@@ -20,10 +20,19 @@ type greetInput struct {
Tags commandkit.Supplied[[]string]
}
func loadAppConfiguration(_ context.Context, _ ckconfig.Selection) (*configkit.Result[appConfiguration], error) {
return configkit.Load[appConfiguration](configkit.Mapping("simple application settings", map[string]any{
func loadAppConfiguration(_ context.Context, selection ckconfig.Selection) (*configkit.Result[appConfiguration], error) {
source := configkit.Mapping("simple application settings", map[string]any{
"greeting": "Hello",
}))
})
if selection.Config.Set {
source = configkit.File(selection.Config.Value)
}
options := configkit.Options[appConfiguration]{}
if selection.Overlay.Set {
options.Overlay = selection.Overlay.Value
options.Filesystem = &configkit.FilesystemContext{Root: ".", BaseDir: "."}
}
return configkit.Load(source, options)
}
func newApp() (*commandkit.App, error) {