Documentation ¶
Overview ¶
Package builder provides common methods for Builder implementations.
Index ¶
- func ApplyReplacements(build *v1alpha1.Build, replacements map[string]string) *v1alpha1.Build
- func ApplyTemplate(u *v1alpha1.Build, tmpl v1alpha1.BuildTemplateInterface) (*v1alpha1.Build, error)
- func ErrorMessage(status *v1alpha1.BuildStatus) (string, bool)
- func IsDone(status *v1alpha1.BuildStatus) bool
- func IsTimeout(status *v1alpha1.BuildStatus, buildTimeout *metav1.Duration) bool
- type Build
- type Interface
- type Operation
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ApplyReplacements ¶ added in v0.2.0
ApplyReplacements replaces placeholders for declared parameters with the specified replacements.
func ApplyTemplate ¶
func ApplyTemplate(u *v1alpha1.Build, tmpl v1alpha1.BuildTemplateInterface) (*v1alpha1.Build, error)
ApplyTemplate applies the values in the template to the build, and replaces placeholders for declared parameters with the build's matching arguments.
func ErrorMessage ¶
func ErrorMessage(status *v1alpha1.BuildStatus) (string, bool)
ErrorMessage returns the error message from the status.
func IsDone ¶
func IsDone(status *v1alpha1.BuildStatus) bool
IsDone returns true if the build's status indicates the build is done.
Types ¶
type Build ¶
type Build interface { // Execute launches this particular build and returns an Operation to track it's progress. Execute() (Operation, error) }
Build defines the interface for launching a build and getting an Operation by which to track it to completion.
type Interface ¶
type Interface interface { // Which builder are we? Builder() v1alpha1.BuildProvider // Validate a Build for this flavor of builder. Validate(*v1alpha1.Build) error // Construct a Build for this flavor of builder from our CRD specification. BuildFromSpec(*v1alpha1.Build) (Build, error) // Construct an Operation for this flavor of builder from a BuildStatus. OperationFromStatus(*v1alpha1.BuildStatus) (Operation, error) }
Interface defines the set of operations that all builders must implement.
type Operation ¶
type Operation interface { // Name provides the unique name for this operation, see OperationFromStatus. Name() string // Checkpoint augments the provided BuildStatus with sufficient state to be // restored by OperationFromStatus on an appropriate BuildProvider. // // This takes into account necessary information about the provided Build. Checkpoint(*v1alpha1.Build, *v1alpha1.BuildStatus) error // Wait blocks until the Operation completes, returning either a status for the build or an error. // TODO(mattmoor): This probably shouldn't be BuildStatus, but some sort of smaller-scope thing. Wait() (*v1alpha1.BuildStatus, error) // Terminate cleans up this particular operation and returns an error if it fails Terminate() error }
Operation defines the interface for interacting with an Operation of a particular BuildProvider.
Directories ¶
Path | Synopsis |
---|---|
Package cluster provides a Builder that runs workloads on-cluster.
|
Package cluster provides a Builder that runs workloads on-cluster. |
convert
Package convert provides methods to convert a Build CRD to a k8s Pod resource.
|
Package convert provides methods to convert a Build CRD to a k8s Pod resource. |
Package nop provides a no-op builder implementation.
|
Package nop provides a no-op builder implementation. |
Package validation provides methods to surface validation errors.
|
Package validation provides methods to surface validation errors. |