v1alpha1

package
v0.1.0-rc5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 21, 2020 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the forge v1alpha1 API group +kubebuilder:object:generate=true +groupName=forge.dominodatalab.com

Index

Constants

View Source
const (
	BasicAuthInline BasicAuthSource = "Inline"
	BasicAuthSecret BasicAuthSource = "Secret"

	Initialized BuildState = "Initialized"
	Building    BuildState = "Building"
	Completed   BuildState = "Completed"
	Failed      BuildState = "Failed"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "forge.dominodatalab.com", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type BasicAuthSource

type BasicAuthSource string

+kubebuilder:validation:Enum=Inline;Secret

type BuildState

type BuildState string

type ContainerImageBuild

type ContainerImageBuild struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   ContainerImageBuildSpec   `json:"spec,omitempty"`
	Status ContainerImageBuildStatus `json:"status,omitempty"`
}

ContainerImageBuild is the Schema for the containerimagebuilds API

func (*ContainerImageBuild) DeepCopy

func (in *ContainerImageBuild) DeepCopy() *ContainerImageBuild

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerImageBuild.

func (*ContainerImageBuild) DeepCopyInto

func (in *ContainerImageBuild) DeepCopyInto(out *ContainerImageBuild)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ContainerImageBuild) DeepCopyObject

func (in *ContainerImageBuild) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ContainerImageBuildList

type ContainerImageBuildList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ContainerImageBuild `json:"items"`
}

ContainerImageBuildList contains a list of ContainerImageBuild

func (*ContainerImageBuildList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerImageBuildList.

func (*ContainerImageBuildList) DeepCopyInto

func (in *ContainerImageBuildList) DeepCopyInto(out *ContainerImageBuildList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ContainerImageBuildList) DeepCopyObject

func (in *ContainerImageBuildList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ContainerImageBuildSpec

type ContainerImageBuildSpec struct {
	// Push to one or more registries.
	// +kubebuilder:validation:MinItems=1
	Registries []Registry `json:"registries"`

	// Name used to build an image.
	// +kubebuilder:validation:MinLength=1
	ImageName string `json:"imageName"`

	// Build context for the image. This can be a local path or url.
	Context string `json:"context"`

	// Image build arguments.
	// +kubebuilder:validation:Optional
	BuildArgs []string `json:"buildArgs"`

	// Labels added to the image during build.
	// +kubebuilder:validation:Optional
	Labels map[string]string `json:"labels"`

	// Disable the use of cache layers for a build.
	// +kubebuilder:validation:Optional
	NoCache bool `json:"noCache"`

	// Limits build cpu consumption (value should be some value from 0 to 100_000).
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:Minimum=10000
	// +kubebuilder:validation:Maximum=100000
	CpuQuota uint16 `json:"cpuQuota"`

	// Limits build memory consumption.
	// +kubebuilder:validation:Optional
	Memory string `json:"memory"`

	// Optional deadline in seconds for image build to complete (defaults to 300).
	// +kubebuilder:validation:Optional
	TimeoutSeconds uint16 `json:"timeoutSeconds"`

	// Prevents images larger than this size (in bytes) from being pushed to a registry. By default,
	// an image of any size will be pushed.
	// +kubebuilder:validation:Optional
	ImageSizeLimit uint64 `json:"imageSizeLimit"`
}

ContainerImageBuildSpec defines the desired state of ContainerImageBuild

func (*ContainerImageBuildSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerImageBuildSpec.

func (*ContainerImageBuildSpec) DeepCopyInto

func (in *ContainerImageBuildSpec) DeepCopyInto(out *ContainerImageBuildSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ContainerImageBuildStatus

type ContainerImageBuildStatus struct {
	PreviousState    BuildState   `json:"-"` // NOTE: should we persist this value?
	State            BuildState   `json:"state,omitempty"`
	ImageURLs        []string     `json:"imageURLs,omitempty"`
	ErrorMessage     string       `json:"errorMessage,omitempty"`
	BuildStartedAt   *metav1.Time `json:"buildStartedAt,omitempty"`
	BuildCompletedAt *metav1.Time `json:"buildCompletedAt,omitempty"`
}

ContainerImageBuildStatus defines the observed state of ContainerImageBuild

func (*ContainerImageBuildStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerImageBuildStatus.

func (*ContainerImageBuildStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ContainerImageBuildStatus) SetState

func (s *ContainerImageBuildStatus) SetState(state BuildState)

type Registry

type Registry struct {
	// URL where an image should be pushed at the end of a successful build.
	// +kubebuilder:validation:MinLength=1
	URL string `json:"url"`

	// Push image to a plain HTTP registry.
	// +kubebuilder:validation:Optional
	Insecure bool `json:"insecure"`

	// Push to a registry with native basic auth enabled.
	// +kubebuilder:validation:Optional
	BasicAuth BasicAuthSource `json:"basicAuth"`

	// Inline basic auth username.
	// +kubebuilder:validation:Optional
	Username string `json:"username"`

	// Inline basic auth password.
	// +kubebuilder:validation:Optional
	Password string `json:"password"`

	// Name of secret containing dockerconfigjson credentials to registry.
	// +kubebuilder:validation:Optional
	SecretName string `json:"secretName"`

	// Namespace where credentials secret resides.
	// +kubebuilder:validation:Optional
	SecretNamespace string `json:"secretNamespace"`
}

func (*Registry) DeepCopy

func (in *Registry) DeepCopy() *Registry

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Registry.

func (*Registry) DeepCopyInto

func (in *Registry) DeepCopyInto(out *Registry)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL