databricks-cli/bundle/phases/phase.go

33 lines
736 B
Go
Raw Normal View History

// Package phases defines build phases as logical groups of [bundle.Mutator] instances.
package phases
import (
"context"
"github.com/databricks/bricks/bundle"
2023-03-22 16:02:22 +00:00
"github.com/databricks/bricks/libs/log"
)
// This phase type groups mutators that belong to a lifecycle phase.
// It expands into the specific mutators when applied.
type phase struct {
name string
mutators []bundle.Mutator
}
func newPhase(name string, mutators []bundle.Mutator) bundle.Mutator {
return &phase{
name: name,
mutators: mutators,
}
}
func (p *phase) Name() string {
return p.name
}
2023-03-22 16:02:22 +00:00
func (p *phase) Apply(ctx context.Context, b *bundle.Bundle) ([]bundle.Mutator, error) {
log.Infof(ctx, "Phase: %s", p.Name())
return p.mutators, nil
}