github.com/wolfi-dev/wolfictl@v0.16.11/pkg/configs/build/build.go (about) 1 package build 2 3 import ( 4 "context" 5 "io/fs" 6 7 "chainguard.dev/melange/pkg/config" 8 "github.com/chainguard-dev/clog" 9 "github.com/wolfi-dev/wolfictl/pkg/configs" 10 "github.com/wolfi-dev/wolfictl/pkg/configs/rwfs" 11 "github.com/wolfi-dev/wolfictl/pkg/internal" 12 ) 13 14 func NewIndex(ctx context.Context, fsys rwfs.FS) (*configs.Index[config.Configuration], error) { 15 return configs.NewIndex[config.Configuration](ctx, fsys, newConfigurationDecodeFunc(fsys)) 16 } 17 18 func NewIndexFromPaths(ctx context.Context, fsys rwfs.FS, paths ...string) (*configs.Index[config.Configuration], error) { 19 return configs.NewIndexFromPaths[config.Configuration](ctx, fsys, newConfigurationDecodeFunc(fsys), paths...) 20 } 21 22 func newConfigurationDecodeFunc(fsys fs.FS) func(context.Context, string) (*config.Configuration, error) { 23 return func(ctx context.Context, path string) (*config.Configuration, error) { 24 ctx = clog.WithLogger(ctx, clog.NewLogger(internal.NopLogger())) 25 return config.ParseConfiguration(ctx, path, config.WithFS(fsys)) 26 } 27 }