package mutator import ( "github.com/databricks/bricks/bundle/config" "golang.org/x/exp/slices" ) type defineDefaultInclude struct { include []string } // DefineDefaultInclude sets the list of includes to a default if it hasn't been set. func DefineDefaultInclude() Mutator { return &defineDefaultInclude{ // When we support globstar we can collapse below into a single line. include: []string{ // Load YAML files in the same directory. "*.yml", // Load YAML files in subdirectories. "*/*.yml", }, } } func (m *defineDefaultInclude) Name() string { return "DefineDefaultInclude" } func (m *defineDefaultInclude) Apply(root *config.Root) ([]Mutator, error) { if len(root.Include) == 0 { root.Include = slices.Clone(m.include) } return nil, nil }