Documentation ¶
Overview ¶
Package v1alpha1 is the v1alpha1 version of the API. +groupName=cbi.containerbuilding.github.io
Index ¶
- Variables
- func Kind(kind string) schema.GroupKind
- func Resource(resource string) schema.GroupResource
- type BuildJob
- type BuildJobList
- type BuildJobSpec
- type BuildJobStatus
- type Cloudbuild
- type Context
- type ContextKind
- type Dockerfile
- type Git
- type HTTP
- type Language
- type LanguageKind
- type Rclone
- type Registry
- type S2I
Constants ¶
This section is empty.
Variables ¶
var ( SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) AddToScheme = SchemeBuilder.AddToScheme )
var SchemeGroupVersion = schema.GroupVersion{Group: cbi.GroupName, Version: "v1alpha1"}
SchemeGroupVersion is group version used to register these objects
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
Types ¶
type BuildJob ¶
type BuildJob struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec BuildJobSpec `json:"spec"` Status BuildJobStatus `json:"status"` }
BuildJob is a specification for a BuildJob resource
NOTE: Kubernetes does not require `yaml:"fooBar"` struct tags for YAML manifests. However, to support embedding CBI BuildJob to other projects, the yaml tags are used.
func (*BuildJob) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BuildJob.
func (*BuildJob) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BuildJob) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BuildJobList ¶
type BuildJobList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata"` Items []BuildJob `json:"items"` }
BuildJobList is a list of BuildJob resources
func (*BuildJobList) DeepCopy ¶
func (in *BuildJobList) DeepCopy() *BuildJobList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BuildJobList.
func (*BuildJobList) DeepCopyInto ¶
func (in *BuildJobList) DeepCopyInto(out *BuildJobList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BuildJobList) DeepCopyObject ¶
func (in *BuildJobList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BuildJobSpec ¶
type BuildJobSpec struct { // Registry specifies the registry. Registry Registry `json:"registry"` // Language specifies the language. Language Language `json:"language"` // Context specifies the context. Context Context `json:"context"` // PluginSelector specifies additional hints for selecting the plugin // using the plugin labels. // e.g. `plugin.name = docker`. // // Controller implementations MUST have logic for selecting the default // plugin using Language and Context. // So, usually users don't need to set PluginSelector explicitly, especially // `language.*` labels and `context.*` labels. // // When PluginSelector is specified, Controller SHOULD select a plugin // that satisfies both its default logic and PluginSelector. // // +optional PluginSelector string `json:"pluginSelector" yaml:"pluginSelector"` }
BuildJobSpec is the spec for a BuildJob resource
func (*BuildJobSpec) DeepCopy ¶
func (in *BuildJobSpec) DeepCopy() *BuildJobSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BuildJobSpec.
func (*BuildJobSpec) DeepCopyInto ¶
func (in *BuildJobSpec) DeepCopyInto(out *BuildJobSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BuildJobStatus ¶
type BuildJobStatus struct {
Job string `json:"job"`
}
BuildJobStatus is the status for a BuildJob resource
func (*BuildJobStatus) DeepCopy ¶
func (in *BuildJobStatus) DeepCopy() *BuildJobStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BuildJobStatus.
func (*BuildJobStatus) DeepCopyInto ¶
func (in *BuildJobStatus) DeepCopyInto(out *BuildJobStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Cloudbuild ¶
type Cloudbuild struct { }
Cloudbuild-specific fields
func (*Cloudbuild) DeepCopy ¶
func (in *Cloudbuild) DeepCopy() *Cloudbuild
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Cloudbuild.
func (*Cloudbuild) DeepCopyInto ¶
func (in *Cloudbuild) DeepCopyInto(out *Cloudbuild)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Context ¶
type Context struct { Kind ContextKind `json:"kind"` Git Git `json:"git"` ConfigMapRef corev1.LocalObjectReference `json:"configMapRef" yaml:"configMapRef"` HTTP HTTP `json:"http"` Rclone Rclone `json:"rclone"` }
Context specifies the context.
func (*Context) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Context.
func (*Context) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ContextKind ¶
type ContextKind string
const ( // ContextKindGit stands for Git context. // When BuildJob.Context.Kind is set to ContextKindGit, the controller // MUST add "context.git" to its default plugin selector logic. ContextKindGit ContextKind = "Git" // ContextKindConfigMap stands for ConfigMap context. // When BuildJob.Context.Kind is set to ContextKindConfigMap, the controller // MUST add "context.configmap" to its default plugin selector logic. ContextKindConfigMap ContextKind = "ConfigMap" // ContextKindHTTP stands for HTTP(S) context. // When BuildJob.Context.Kind is set to ContextKindHTTP, the controller // MUST add "context.http" to its default plugin selector logic. ContextKindHTTP ContextKind = "HTTP" // ContextKindRclone stands for Rclone context. // When BuildJob.Context.Kind is set to ContextKindHTTP, the controller // MUST add "context.rclone" to its default plugin selector logic. ContextKindRclone ContextKind = "Rclone" )
type Dockerfile ¶
type Dockerfile struct { }
Dockerfile-specific fields
func (*Dockerfile) DeepCopy ¶
func (in *Dockerfile) DeepCopy() *Dockerfile
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Dockerfile.
func (*Dockerfile) DeepCopyInto ¶
func (in *Dockerfile) DeepCopyInto(out *Dockerfile)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Git ¶
type Git struct { // URL is defined in `git-clone(1)`. // e.g. // - ssh://[user@]host.xz[:port]/path/to/repo.git/ // - [user@]host.xz:path/to/repo.git/ // // Implementor's Note: url can be also like `file://`, // although not useful for CBI. URL string `json:"url"` // Revision such as commit, branch, or tag. // +optional Revision string `json:"revision"` // SubPath within the repo. // +optinal SubPath string `json:"subPath" yaml:"subPath"` // SSHSecretRef contains the contents of ~/.ssh. // +optional SSHSecretRef corev1.LocalObjectReference `json:"sshSecretRef" yaml:"sshSecretRef"` }
Git
func (*Git) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Git.
func (*Git) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HTTP ¶
type HTTP struct { // URL for a tar archive. // URL MUST be http:// or https:// . // Implementations SHOULD accept tar+gz. URL string `json:"url"` // TODO: add mediatype // TODO: add TLS stuff // // SubPath within the archive. // +optinal SubPath string `json:"subPath" yaml:"subPath"` }
HTTP
func (*HTTP) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTP.
func (*HTTP) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Language ¶
type Language struct { Kind LanguageKind `json:"kind"` Dockerfile Dockerfile `json:"dockerfile"` S2I S2I `json:"s2i"` Cloudbuild Cloudbuild `json:"cloudbuild"` }
Language specifies the language.
func (*Language) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Language.
func (*Language) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LanguageKind ¶
type LanguageKind string
const ( // LanguageKindDockerfile stands for Dockerfile. // When BuildJob.Language.Kind is set to LanguageKindDockerfile, the controller // MUST add "language.dockerfile" to its default plugin selector logic. LanguageKindDockerfile LanguageKind = "Dockerfile" // LanguageKindS2I stands for OpenShift Source-to-Image. LanguageKindS2I LanguageKind = "S2I" // LanguageKindCloudbuild stands for Google cloudbuild.yaml LanguageKindCloudbuild LanguageKind = "Cloudbuild" )
type Rclone ¶
type Rclone struct { Remote string Path string // SecretRef contains the contents of ~/.config/rclone. SecretRef corev1.LocalObjectReference `json:"secretRef" yaml:"secretRef"` // SSHSecretRef contains the contents of ~/.ssh.OLD. // Only required for SFTP remote. // +optional SSHSecretRef corev1.LocalObjectReference `json:"sshSecretRef" yaml:"sshSecretRef"` }
Rclone
func (*Rclone) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Rclone.
func (*Rclone) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Registry ¶
type Registry struct { // Target is used for pushing the artifact to the registry. // Most plugin implementations would require non-empty Target string, // even when Push is set to false. // // Cloudbuild requires this filed not to be set. // +optional // e.g. `example.com:foo/bar:latest` Target string `json:"target"` // Push pushes the image. // Can be set to false, especially for testing purposes. // +optional Push bool `json:"push"` // SecretRef used for pushing and pulling. // +optional SecretRef corev1.LocalObjectReference `json:"secretRef" yaml:"secretRef"` }
Registry specifies the registry.
func (*Registry) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Registry.
func (*Registry) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type S2I ¶
type S2I struct { // S2I-specific base image. e,g, centos/ruby-22-centos7 BaseImage string `json:"baseImage" yaml:"baseImage"` }
S2I-specific fields
func (*S2I) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new S2I.
func (*S2I) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.