Documentation
¶
Overview ¶
Package builder defines the Builder interface and supporting types for the wfctl build pipeline. Implementations live in plugins/builder-*.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Artifact ¶
type Artifact struct {
Name string
Kind string // binary | image | bundle | other
Paths []string
Metadata map[string]any
}
Artifact is a single file or image produced by a builder.
type Builder ¶
type Builder interface {
// Name returns the unique identifier used in ci.build.targets[].type.
Name() string
// Validate checks the Config without executing anything.
Validate(cfg Config) error
// Build executes the build and populates out with produced artifacts.
Build(ctx context.Context, cfg Config, out *Outputs) error
// SecurityLint inspects the config for supply-chain issues and returns
// zero or more findings. It must not execute any build steps.
SecurityLint(cfg Config) []Finding
}
Builder is the contract every build plugin must satisfy.
type Config ¶
type Config struct {
TargetName string
Path string
Fields map[string]any
Env map[string]string
Security *SecurityConfig
}
Config carries all inputs a Builder needs to produce its artifacts.
type Finding ¶
type Finding struct {
Severity string // info | warn | critical
Message string
File string
Line int
}
Finding is a security or policy issue found by SecurityLint.
Click to show internal directories.
Click to hide internal directories.