Documentation ¶
Overview ¶
Package v1alpha2 contains API Schema definitions for the jenkins v1alpha2 API group +kubebuilder:object:generate=true +groupName=jenkins.io
Package v1alpha2 contains API Schema definitions for the jenkins.io v1alpha2 API group +k8s:deepcopy-gen=package,register +groupName=jenkins.io
Index ¶
- Constants
- Variables
- func JenkinsTypeMeta() metav1.TypeMeta
- type AuthorizationStrategy
- type Backup
- type BackupList
- type BackupOptions
- type BackupSpec
- type BackupStatus
- type BackupStrategy
- type BackupStrategyList
- type BackupStrategySpec
- type BackupStrategyStatus
- type BackupVolume
- type BackupVolumeList
- type BackupVolumeSpec
- type BackupVolumeStatus
- type ConfigMapRef
- type Configuration
- type Container
- type Image
- type Jenkins
- func (in *Jenkins) DeepCopy() *Jenkins
- func (in *Jenkins) DeepCopyInto(out *Jenkins)
- func (in *Jenkins) DeepCopyObject() runtime.Object
- func (jenkins *Jenkins) GetCRName() string
- func (jenkins *Jenkins) GetNamespace() string
- func (in *Jenkins) GetObjectKind() schema.ObjectKind
- func (in *Jenkins) GroupVersionKind() schema.GroupVersionKind
- func (in *Jenkins) SetGroupVersionKind(kind schema.GroupVersionKind)
- type JenkinsAPISettings
- type JenkinsImage
- type JenkinsImageBuild
- type JenkinsImageList
- type JenkinsImagePhase
- type JenkinsImageSpec
- type JenkinsImageStatus
- type JenkinsList
- type JenkinsMaster
- type JenkinsPersistentSpec
- type JenkinsPlugin
- type JenkinsSpec
- type JenkinsStatus
- type NotificationLevel
- type Plugin
- type RestartConfig
- type Restore
- type RestoreList
- type RestoreSpec
- type RestoreStatus
- type SecretKeySelector
- type SecretRef
- type Service
- type ServiceAccount
Constants ¶
const (
// Kind defines Jenkins CRD kind name
Kind = "Jenkins"
)
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "jenkins.io", Version: "v1alpha2"} // 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 )
var SchemeGroupVersion = schema.GroupVersion{Group: "jenkins.io", Version: "v1alpha2"}
SchemeGroupVersion is group version used to register these objects
Functions ¶
func JenkinsTypeMeta ¶
JenkinsTypeMeta returns Jenkins type meta
Types ¶
type AuthorizationStrategy ¶
type AuthorizationStrategy string
AuthorizationStrategy defines authorization strategy of the operator for the Jenkins API
const ( // CreateUserAuthorizationStrategy operator sets HudsonPrivateSecurityRealm and FullControlOnceLoggedInAuthorizationStrategy than creates user using init.d groovy script CreateUserAuthorizationStrategy AuthorizationStrategy = "createUser" // ServiceAccountAuthorizationStrategy operator gets token associated with Jenkins service account and uses it as bearer token ServiceAccountAuthorizationStrategy AuthorizationStrategy = "serviceAccount" )
type Backup ¶
type Backup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec BackupSpec `json:"spec,omitempty"` Status BackupStatus `json:"status,omitempty"` }
Backup is the Schema for the backups API
func (*Backup) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Backup.
func (*Backup) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Backup) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BackupList ¶
type BackupList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Backup `json:"items"` }
BackupList contains a list of Backup
func (*BackupList) DeepCopy ¶
func (in *BackupList) DeepCopy() *BackupList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupList.
func (*BackupList) DeepCopyInto ¶
func (in *BackupList) DeepCopyInto(out *BackupList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BackupList) DeepCopyObject ¶
func (in *BackupList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BackupOptions ¶
type BackupOptions struct { Jobs bool `json:"jobs"` Plugins bool `json:"plugins"` Config bool `json:"config"` }
BackupOptions specifies the options provided to user to backup between. default BackupStrategy sets all to true
func (*BackupOptions) DeepCopy ¶
func (in *BackupOptions) DeepCopy() *BackupOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupOptions.
func (*BackupOptions) DeepCopyInto ¶
func (in *BackupOptions) DeepCopyInto(out *BackupOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupSpec ¶
type BackupSpec struct { JenkinsRef string `json:"jenkinsRef,omitempty"` StrategyRef string `json:"strategyRef,omitempty"` BackupVolumeRef string `json:"backupVolumeRef,omitempty"` }
BackupSpec defines the desired state of Backup
func (*BackupSpec) DeepCopy ¶
func (in *BackupSpec) DeepCopy() *BackupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupSpec.
func (*BackupSpec) DeepCopyInto ¶
func (in *BackupSpec) DeepCopyInto(out *BackupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupStatus ¶
type BackupStatus struct { // Conditions represent the latest available observations of an object's state Conditions status.Conditions `json:"conditions"` }
BackupStatus defines the observed state of Backup
func (*BackupStatus) DeepCopy ¶
func (in *BackupStatus) DeepCopy() *BackupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupStatus.
func (*BackupStatus) DeepCopyInto ¶
func (in *BackupStatus) DeepCopyInto(out *BackupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupStrategy ¶
type BackupStrategy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec BackupStrategySpec `json:"spec,omitempty"` Status BackupStrategyStatus `json:"status,omitempty"` }
BackupStrategy is a reusable and referencable strategy used for backing up Jenkins instances and information available inside
func (*BackupStrategy) DeepCopy ¶
func (in *BackupStrategy) DeepCopy() *BackupStrategy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupStrategy.
func (*BackupStrategy) DeepCopyInto ¶
func (in *BackupStrategy) DeepCopyInto(out *BackupStrategy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BackupStrategy) DeepCopyObject ¶
func (in *BackupStrategy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BackupStrategyList ¶
type BackupStrategyList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []BackupStrategy `json:"items"` }
BackupStrategyList contains a list of BackupStrategy
func (*BackupStrategyList) DeepCopy ¶
func (in *BackupStrategyList) DeepCopy() *BackupStrategyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupStrategyList.
func (*BackupStrategyList) DeepCopyInto ¶
func (in *BackupStrategyList) DeepCopyInto(out *BackupStrategyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BackupStrategyList) DeepCopyObject ¶
func (in *BackupStrategyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BackupStrategySpec ¶
type BackupStrategySpec struct { // QuietDownDuringBackup will put the Jenkins instance in a QuietDown mode which prevents any new builds from taking place QuietDownDuringBackup bool `json:"quietDownDuringBackup,omitempty"` // Options specifies the options provided to user to backup between. default BackupStrategy sets all to true Options BackupOptions `json:"backupOptions"` // RestartAfterRestore will restart the Jenkins instance after a Restore RestartAfterRestore RestartConfig `json:"restartAfterRestore"` }
BackupStrategySpec defines the desired state of BackupStrategy
func (*BackupStrategySpec) DeepCopy ¶
func (in *BackupStrategySpec) DeepCopy() *BackupStrategySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupStrategySpec.
func (*BackupStrategySpec) DeepCopyInto ¶
func (in *BackupStrategySpec) DeepCopyInto(out *BackupStrategySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupStrategyStatus ¶
type BackupStrategyStatus struct { }
BackupStrategyStatus defines the observed state of BackupStrategy
func (*BackupStrategyStatus) DeepCopy ¶
func (in *BackupStrategyStatus) DeepCopy() *BackupStrategyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupStrategyStatus.
func (*BackupStrategyStatus) DeepCopyInto ¶
func (in *BackupStrategyStatus) DeepCopyInto(out *BackupStrategyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupVolume ¶
type BackupVolume struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec BackupVolumeSpec `json:"spec,omitempty"` Status BackupVolumeStatus `json:"status,omitempty"` }
BackupVolume is the Schema for the backupvolumes API
func (*BackupVolume) DeepCopy ¶
func (in *BackupVolume) DeepCopy() *BackupVolume
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupVolume.
func (*BackupVolume) DeepCopyInto ¶
func (in *BackupVolume) DeepCopyInto(out *BackupVolume)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BackupVolume) DeepCopyObject ¶
func (in *BackupVolume) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BackupVolumeList ¶
type BackupVolumeList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []BackupVolume `json:"items"` }
BackupVolumeList contains a list of BackupVolume
func (*BackupVolumeList) DeepCopy ¶
func (in *BackupVolumeList) DeepCopy() *BackupVolumeList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupVolumeList.
func (*BackupVolumeList) DeepCopyInto ¶
func (in *BackupVolumeList) DeepCopyInto(out *BackupVolumeList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BackupVolumeList) DeepCopyObject ¶
func (in *BackupVolumeList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BackupVolumeSpec ¶
type BackupVolumeSpec struct { PersistentVolumeClaimName string `json:"pvcName,omitempty"` StorageClassName string `json:"storageClassName,omitempty"` Size string `json:"size,omitempty"` }
BackupVolumeSpec defines the desired state of BackupVolume
func (*BackupVolumeSpec) DeepCopy ¶
func (in *BackupVolumeSpec) DeepCopy() *BackupVolumeSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupVolumeSpec.
func (*BackupVolumeSpec) DeepCopyInto ¶
func (in *BackupVolumeSpec) DeepCopyInto(out *BackupVolumeSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupVolumeStatus ¶
type BackupVolumeStatus struct {
Conditions status.Conditions `json:"conditions,omitempty"`
}
BackupVolumeStatus defines the observed state of BackupVolume
func (*BackupVolumeStatus) DeepCopy ¶
func (in *BackupVolumeStatus) DeepCopy() *BackupVolumeStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupVolumeStatus.
func (*BackupVolumeStatus) DeepCopyInto ¶
func (in *BackupVolumeStatus) DeepCopyInto(out *BackupVolumeStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConfigMapRef ¶
type ConfigMapRef struct {
Name string `json:"name"`
}
ConfigMapRef is reference to Kubernetes ConfigMap
func (*ConfigMapRef) DeepCopy ¶
func (in *ConfigMapRef) DeepCopy() *ConfigMapRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigMapRef.
func (*ConfigMapRef) DeepCopyInto ¶
func (in *ConfigMapRef) DeepCopyInto(out *ConfigMapRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Configuration ¶
type Configuration struct { // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Enable this configuration",xDescriptors="urn:alm:descriptor:com.tectonic.ui:booleanSwitch" Enabled bool `json:"enabled"` DefaultConfig bool `json:"defaultConfig"` Secret SecretRef `json:"secret,omitempty"` Configurations []ConfigMapRef `json:"configurations,omitempty"` EnableAutoReload bool `json:"enableAutoReload"` }
Configuration defines a Jenkins Configuration
func (*Configuration) DeepCopy ¶
func (in *Configuration) DeepCopy() *Configuration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Configuration.
func (*Configuration) DeepCopyInto ¶
func (in *Configuration) DeepCopyInto(out *Configuration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Container ¶
type Container struct { // Name of the container specified as a DNS_LABEL. // Each container in a pod must have a unique name (DNS_LABEL). Name string `json:"name"` // Docker image name. // More info: https://kubernetes.io/docs/concepts/containers/images Image string `json:"image"` // Image pull policy. // One of Always, Never, IfNotPresent. // Defaults to Always. ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy,omitempty"` // Compute Resources required by this container. // More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/ Resources corev1.ResourceRequirements `json:"resources,omitempty"` // Entrypoint array. Not executed within a shell. // The docker image's ENTRYPOINT is used if this is not provided. // Variable references $(VAR_NAME) are expanded using the container's environment. If a variable // cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax // can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, // regardless of whether the variable exists or not. // More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell // +optional Command []string `json:"command,omitempty"` // Arguments to the entrypoint. // The docker image's CMD is used if this is not provided. // Variable references $(VAR_NAME) are expanded using the container's environment. If a variable // cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax // can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, // regardless of whether the variable exists or not. // More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell // +optional Args []string `json:"args,omitempty"` // Container's working directory. // If not specified, the container runtime's default will be used, which // might be configured in the container image. // +optional WorkingDir string `json:"workingDir,omitempty"` // List of ports to expose from the container. Exposing a port here gives // the system additional information about the network connections a // container uses, but is primarily informational. Not specifying a port here // DOES NOT prevent that port from being exposed. Any port which is // listening on the default "0.0.0.0" address inside a container will be // accessible from the network. // +optional Ports []corev1.ContainerPort `json:"ports,omitempty"` // List of sources to populate environment variables in the container. // The keys defined within a source must be a C_IDENTIFIER. All invalid keys // will be reported as an event when the container is starting. When a key exists in multiple // sources, the value associated with the last source will take precedence. // Values defined by an Env with a duplicate key will take precedence. // +optional EnvFrom []corev1.EnvFromSource `json:"envFrom,omitempty"` // List of environment variables to set in the container. // +optional Env []corev1.EnvVar `json:"env,omitempty"` // Pod volumes to mount into the container's filesystem. // +optional VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"` // Periodic probe of container liveness. // Container will be restarted if the probe fails. // +optional LivenessProbe *corev1.Probe `json:"livenessProbe,omitempty"` // Periodic probe of container service readiness. // Container will be removed from service endpoints if the probe fails. // +optional ReadinessProbe *corev1.Probe `json:"readinessProbe,omitempty"` // Actions that the management system should take in response to container lifecycle events. // +optional Lifecycle *corev1.Lifecycle `json:"lifecycle,omitempty"` // Security options the pod should run with. // More info: https://kubernetes.io/docs/concepts/policy/security-context/ // More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ // +optional SecurityContext *corev1.SecurityContext `json:"securityContext,omitempty"` }
Container defines Kubernetes container attributes.
func (*Container) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Container.
func (*Container) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Image ¶
type Image struct { // The Image name // +operator-sdk:csv:customresourcedefinitions:type=spec Name string `json:"name"` // The tag name // +operator-sdk:csv:customresourcedefinitions:type=spec Tag string `json:"tag,omitempty"` // The registry to pull from or push to this image in the form fully.qdn/myrepository/ // Image name will be appended for push // +operator-sdk:csv:customresourcedefinitions:type=spec Registry string `json:"registry,omitempty"` // Secret is an optional reference to a secret in the same namespace to use for pushing to or pulling from the registry. // +operator-sdk:csv:customresourcedefinitions:xDescriptors="urn:alm:descriptor:io.kubernetes:Secret" Secret string `json:"secret,omitempty"` }
A JenkinsImage definition
func (*Image) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Image.
func (*Image) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Jenkins ¶
type Jenkins struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // Spec defines the desired state of the Jenkins Spec JenkinsSpec `json:"spec,omitempty"` // Status defines the observed state of Jenkins Status *JenkinsStatus `json:"status,omitempty"` }
Jenkins is the Schema for the jenkins API +k8s:openapi-gen=true +kubebuilder:object:root=true +kubebuilder:subresource:status
func (*Jenkins) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Jenkins.
func (*Jenkins) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Jenkins) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Jenkins) GetNamespace ¶
func (*Jenkins) GetObjectKind ¶
func (in *Jenkins) GetObjectKind() schema.ObjectKind
GetObjectKind returns Jenkins object kind
func (*Jenkins) GroupVersionKind ¶
func (in *Jenkins) GroupVersionKind() schema.GroupVersionKind
GroupVersionKind returns GroupVersionKind
func (*Jenkins) SetGroupVersionKind ¶
func (in *Jenkins) SetGroupVersionKind(kind schema.GroupVersionKind)
SetGroupVersionKind sets GroupVersionKind
type JenkinsAPISettings ¶
type JenkinsAPISettings struct {
AuthorizationStrategy AuthorizationStrategy `json:"authorizationStrategy"`
}
JenkinsAPISettings defines configuration used by the operator to gain admin access to the Jenkins API
func (*JenkinsAPISettings) DeepCopy ¶
func (in *JenkinsAPISettings) DeepCopy() *JenkinsAPISettings
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JenkinsAPISettings.
func (*JenkinsAPISettings) DeepCopyInto ¶
func (in *JenkinsAPISettings) DeepCopyInto(out *JenkinsAPISettings)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JenkinsImage ¶
type JenkinsImage struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec JenkinsImageSpec `json:"spec,omitempty"` Status JenkinsImageStatus `json:"status,omitempty"` }
JenkinsImage is the Schema for the jenkinsimages API +kubebuilder:subresource:status +kubebuilder:resource:path=jenkinsimages,scope=Namespaced
func (*JenkinsImage) DeepCopy ¶
func (in *JenkinsImage) DeepCopy() *JenkinsImage
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JenkinsImage.
func (*JenkinsImage) DeepCopyInto ¶
func (in *JenkinsImage) DeepCopyInto(out *JenkinsImage)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*JenkinsImage) DeepCopyObject ¶
func (in *JenkinsImage) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type JenkinsImageBuild ¶
type JenkinsImageBuild struct { // +operator-sdk:csv:customresourcedefinitions.type=status Image string `json:"image,omitempty"` MD5Sum string `json:"md5sum,omitempty"` InstalledPlugins string `json:"installedPlugins,omitempty"` }
func (*JenkinsImageBuild) DeepCopy ¶
func (in *JenkinsImageBuild) DeepCopy() *JenkinsImageBuild
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JenkinsImageBuild.
func (*JenkinsImageBuild) DeepCopyInto ¶
func (in *JenkinsImageBuild) DeepCopyInto(out *JenkinsImageBuild)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JenkinsImageList ¶
type JenkinsImageList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []JenkinsImage `json:"items"` }
+kubebuilder:object:root=true JenkinsImageList contains a list of JenkinsImage
func (*JenkinsImageList) DeepCopy ¶
func (in *JenkinsImageList) DeepCopy() *JenkinsImageList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JenkinsImageList.
func (*JenkinsImageList) DeepCopyInto ¶
func (in *JenkinsImageList) DeepCopyInto(out *JenkinsImageList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*JenkinsImageList) DeepCopyObject ¶
func (in *JenkinsImageList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type JenkinsImagePhase ¶
type JenkinsImagePhase string
const ( ImageBuildSuccessful JenkinsImagePhase = "ImageBuildSuccessful" ImageBuildPending JenkinsImagePhase = "ImageBuildPending" )
type JenkinsImageSpec ¶
type JenkinsImageSpec struct { From Image `json:"from"` To Image `json:"to"` // Plugins list Plugins []JenkinsPlugin `json:"plugins,omitempty"` // DefaultUpdateCenter is a customer update center url from which all plugins will be downloaded. // if not specified, https://updates.jenkins.io/ is used DefaultUpdateCenter string `json:"defaultUpdateCenter,omitempty"` }
JenkinsImageSpec defines the desired state of JenkinsImage
func (*JenkinsImageSpec) DeepCopy ¶
func (in *JenkinsImageSpec) DeepCopy() *JenkinsImageSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JenkinsImageSpec.
func (*JenkinsImageSpec) DeepCopyInto ¶
func (in *JenkinsImageSpec) DeepCopyInto(out *JenkinsImageSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JenkinsImageStatus ¶
type JenkinsImageStatus struct { Phase JenkinsImagePhase `json:"phase,default:ImageBuildPending"` Builds []JenkinsImageBuild `json:"builds"` }
JenkinsImageStatus defines the observed state of JenkinsImage
func (*JenkinsImageStatus) DeepCopy ¶
func (in *JenkinsImageStatus) DeepCopy() *JenkinsImageStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JenkinsImageStatus.
func (*JenkinsImageStatus) DeepCopyInto ¶
func (in *JenkinsImageStatus) DeepCopyInto(out *JenkinsImageStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JenkinsList ¶
type JenkinsList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Jenkins `json:"items"` }
JenkinsList contains a list of Jenkins.
func (*JenkinsList) DeepCopy ¶
func (in *JenkinsList) DeepCopy() *JenkinsList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JenkinsList.
func (*JenkinsList) DeepCopyInto ¶
func (in *JenkinsList) DeepCopyInto(out *JenkinsList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*JenkinsList) DeepCopyObject ¶
func (in *JenkinsList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type JenkinsMaster ¶
type JenkinsMaster struct { // Annotations is an unstructured key value map stored with a resource that may be // set by external tools to store and retrieve arbitrary metadata. They are not // queryable and should be preserved when modifying objects. // More info: http://kubernetes.io/docs/user-guide/annotations // +optional Annotations map[string]string `json:"annotations,omitempty"` // Annotations is an unstructured key value map stored with a resource that may be // set by external tools to store and retrieve arbitrary metadata. They are not // queryable and should be preserved when modifying objects. // More info: http://kubernetes.io/docs/user-guide/annotations // Deprecated: will be removed in the future, please use Annotations(annotations) // +optional AnnotationsDeprecated map[string]string `json:"masterAnnotations,omitempty"` // Map of string keys and values that can be used to organize and categorize // (scope and select) objects. May match selectors of replication controllers // and services. // More info: http://kubernetes.io/docs/user-guide/labels // +optional Labels map[string]string `json:"labels,omitempty"` // NodeSelector is a selector which must be true for the pod to fit on a node. // Selector which must match a node's labels for the pod to be scheduled on that node. // More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ // +optional NodeSelector map[string]string `json:"nodeSelector,omitempty"` // SecurityContext that applies to all the containers of the Jenkins // Master. As per kubernetes specification, it can be overridden // for each container individually. // +optional // Defaults to: // runAsUser: 1000 // fsGroup: 1000 SecurityContext *corev1.PodSecurityContext `json:"securityContext,omitempty"` // List of containers belonging to the pod. // Containers cannot currently be added or removed. // There must be at least one container in a Pod. // +optional // Defaults to: // - image: jenkins/jenkins:lts // imagePullPolicy: Always // livenessProbe: // failureThreshold: 12 // httpGet: // path: /login // port: http // scheme: HTTP // initialDelaySeconds: 80 // periodSeconds: 10 // successThreshold: 1 // timeoutSeconds: 5 // name: jenkins-master // readinessProbe: // failureThreshold: 3 // httpGet: // path: /login // port: http // scheme: HTTP // initialDelaySeconds: 30 // periodSeconds: 10 // successThreshold: 1 // timeoutSeconds: 1 // resources: // limits: // cpu: 1500m // memory: 3Gi // requests: // cpu: "1" // memory: 600Mi Containers []Container `json:"containers,omitempty"` // ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec. // If specified, these secrets will be passed to individual puller implementations for them to use. For example, // in the case of docker, only DockerConfig type secrets are honored. // More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod // +optional ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"` // List of volumes that can be mounted by containers belonging to the pod. // More info: https://kubernetes.io/docs/concepts/storage/volumes // +optional Volumes []corev1.Volume `json:"volumes,omitempty"` // If specified, the pod's tolerations. // +optional Tolerations []corev1.Toleration `json:"tolerations,omitempty"` // BasePlugins contains plugins required by operator // +optional // Defaults to : // - name: kubernetes // version: 1.15.7 // - name: workflow-job // version: "2.39" // - name: workflow-aggregator // version: "2.6" // - name: git // version: 3.10.0 // - name: job-dsl // version: "1.74" // - name: configuration-as-code // version: "1.19" // - name: kubernetes-credentials-provider // version: 0.12.1 BasePlugins []Plugin `json:"basePlugins,omitempty"` // PriorityClassName for Jenkins master pod // +optional PriorityClassName string `json:"priorityClassName,omitempty"` }
JenkinsMaster defines the Jenkins master pod attributes and plugins, every single change requires a Jenkins master pod restart.
func (*JenkinsMaster) DeepCopy ¶
func (in *JenkinsMaster) DeepCopy() *JenkinsMaster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JenkinsMaster.
func (*JenkinsMaster) DeepCopyInto ¶
func (in *JenkinsMaster) DeepCopyInto(out *JenkinsMaster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JenkinsPersistentSpec ¶
type JenkinsPersistentSpec struct { Enabled bool `json:"enabled,omitempty"` StorageClassName string `json:"storageClassName,omitempty"` VolumeSize string `json:"volumeSize,omitempty"` }
func (*JenkinsPersistentSpec) DeepCopy ¶
func (in *JenkinsPersistentSpec) DeepCopy() *JenkinsPersistentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JenkinsPersistentSpec.
func (*JenkinsPersistentSpec) DeepCopyInto ¶
func (in *JenkinsPersistentSpec) DeepCopyInto(out *JenkinsPersistentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JenkinsPlugin ¶
type JenkinsPlugin struct { Name string `json:"name"` Version string `json:"version,omitempty"` // UpdateCenter is a specific update center url from which this plugin will be downloaded. If not // specified, DefaultUpdateCenter is used. UpdateCenter string `json:"updateCenter,omitempty"` }
Defines Jenkins Plugin structure
func (*JenkinsPlugin) DeepCopy ¶
func (in *JenkinsPlugin) DeepCopy() *JenkinsPlugin
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JenkinsPlugin.
func (*JenkinsPlugin) DeepCopyInto ¶
func (in *JenkinsPlugin) DeepCopyInto(out *JenkinsPlugin)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JenkinsSpec ¶
type JenkinsSpec struct { // Master represents Jenkins master pod properties and Jenkins plugins. // Every single change here requires a pod restart. Master *JenkinsMaster `json:"master,omitempty"` // JenkinsImageRef a reference to a JenkinsImage in the current namespace. The JenkinsImage must have // status to be "SuccessfullyBuilt" ; then the image target image in JenkinsImage.To will be used // as the image of the Master container. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="JenkinsImage reference",xDescriptors="urn:alm:descriptor:io.jenkins:JenkinsImage" JenkinsImageRef string `json:"jenkinsImageRef,omitempty"` ForceBasePluginsInstall bool `json:"forceBasePluginsInstall,omitempty"` // Service is Kubernetes service of Jenkins master HTTP pod // Defaults to : // port: 8080 // type: ClusterIP // +optional Service Service `json:"service,omitempty"` // Service is Kubernetes service of Jenkins agent pods // Defaults to : // port: 50000 // type: ClusterIP // +optional JNLPService Service `json:"jnlpService,omitempty"` // Roles defines list of extra RBAC roles for the Jenkins Master pod service account // +optional Roles []rbacv1.RoleRef `json:"roles,omitempty"` // ServiceAccount defines Jenkins master service account attributes // +optional ServiceAccount ServiceAccount `json:"serviceAccount,omitempty"` // JenkinsAPISettings defines configuration used by the operator to gain admin access to the Jenkins API JenkinsAPISettings JenkinsAPISettings `json:"jenkinsAPISettings,omitempty"` // ConfigurationAsCode defines configuration of Jenkins configuration via Configuration as Code Jenkins plugin // +optional ConfigurationAsCode *Configuration `json:"configurationAsCode,omitempty"` // BackupEnabled defines whether backup feature is enabled BackupVolumes []string `json:"backupVolumes,omitempty"` // MetricsEnabled defines whether prometheus metrics are enabled MetricsEnabled bool `json:"metricsEnabled,omitempty"` // ProxyConfigurationEnabled defines whether openshift global proxy configuration is enabled // if enabled, and if a global proxy is set in openshift, the operator will automatically // configure the jenkins proxy ProxyConfigurationEnabled bool `json:"proxyConfigurationEnabled,omitempty"` // PersistentSpec PersistentSpec JenkinsPersistentSpec `json:"persistentSpec,omitempty"` }
JenkinsSpec defines the desired state of the Jenkins. +k8s:openapi-gen=true +operator-sdk:csv:customresourcedefinitions:displayName="Jenkins"
func (*JenkinsSpec) DeepCopy ¶
func (in *JenkinsSpec) DeepCopy() *JenkinsSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JenkinsSpec.
func (*JenkinsSpec) DeepCopyInto ¶
func (in *JenkinsSpec) DeepCopyInto(out *JenkinsSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JenkinsStatus ¶
type JenkinsStatus struct { // OperatorVersion is the operator version which manages this CR // +optional OperatorVersion string `json:"operatorVersion,omitempty"` // Conditions describes the state of the jenkins resource. // +patchMergeKey=type // +patchStrategy=merge // +optional Conditions []conditionsv1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"` // ProvisionStartTime is a time when Jenkins master pod has been created // +optional ProvisionStartTime *metav1.Time `json:"provisionStartTime,omitempty"` // UserAndPasswordHash is a SHA256 hash made from user and password // +optional UserAndPasswordHash string `json:"userAndPasswordHash,omitempty"` // Spec defines the effective state of the Jenkins Spec *JenkinsSpec `json:"spec,omitempty"` }
func (*JenkinsStatus) DeepCopy ¶
func (in *JenkinsStatus) DeepCopy() *JenkinsStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JenkinsStatus.
func (*JenkinsStatus) DeepCopyInto ¶
func (in *JenkinsStatus) DeepCopyInto(out *JenkinsStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NotificationLevel ¶
type NotificationLevel string
NotificationLevel defines the level of a Notification.
const ( // NotificationLevelWarning - Only Warnings NotificationLevelWarning NotificationLevel = "warning" // NotificationLevelInfo - Only info NotificationLevelInfo NotificationLevel = "info" )
type Plugin ¶
type Plugin struct { // Name is the name of Jenkins plugin Name string `json:"name"` // Version is the version of Jenkins plugin Version string `json:"version"` // DownloadURL is the custom url from where plugin has to be downloaded. DownloadURL string `json:"downloadURL,omitempty"` }
Plugin defines Jenkins plugin.
func (*Plugin) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Plugin.
func (*Plugin) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RestartConfig ¶
Config for Restart (applies only to Restore
func (*RestartConfig) DeepCopy ¶
func (in *RestartConfig) DeepCopy() *RestartConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestartConfig.
func (*RestartConfig) DeepCopyInto ¶
func (in *RestartConfig) DeepCopyInto(out *RestartConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Restore ¶
type Restore struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec RestoreSpec `json:"spec,omitempty"` Status RestoreStatus `json:"status,omitempty"` }
Restore is the Schema for the restores API
func (*Restore) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Restore.
func (*Restore) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Restore) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RestoreList ¶
type RestoreList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Restore `json:"items"` }
RestoreList contains a list of Restore
func (*RestoreList) DeepCopy ¶
func (in *RestoreList) DeepCopy() *RestoreList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreList.
func (*RestoreList) DeepCopyInto ¶
func (in *RestoreList) DeepCopyInto(out *RestoreList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RestoreList) DeepCopyObject ¶
func (in *RestoreList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RestoreSpec ¶
type RestoreSpec struct {
BackupRef string `json:"backupRef,omitempty"`
}
RestoreSpec defines the desired state of Restore
func (*RestoreSpec) DeepCopy ¶
func (in *RestoreSpec) DeepCopy() *RestoreSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreSpec.
func (*RestoreSpec) DeepCopyInto ¶
func (in *RestoreSpec) DeepCopyInto(out *RestoreSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RestoreStatus ¶
type RestoreStatus struct {
Conditions status.Conditions `json:"conditions"`
}
RestoreStatus defines the observed state of Restore
func (*RestoreStatus) DeepCopy ¶
func (in *RestoreStatus) DeepCopy() *RestoreStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreStatus.
func (*RestoreStatus) DeepCopyInto ¶
func (in *RestoreStatus) DeepCopyInto(out *RestoreStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecretKeySelector ¶
type SecretKeySelector struct { // The name of the secret in the pod's namespace to select from. corev1.LocalObjectReference `json:"secret"` // The key of the secret to select from. Must be a valid secret key. Key string `json:"key"` }
SecretKeySelector selects a key of a Secret.
func (*SecretKeySelector) DeepCopy ¶
func (in *SecretKeySelector) DeepCopy() *SecretKeySelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretKeySelector.
func (*SecretKeySelector) DeepCopyInto ¶
func (in *SecretKeySelector) DeepCopyInto(out *SecretKeySelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecretRef ¶
type SecretRef struct {
Name string `json:"name"`
}
SecretRef is reference to Kubernetes secret
func (*SecretRef) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretRef.
func (*SecretRef) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Service ¶
type Service struct { // Annotations is an unstructured key value map stored with a resource that may be // set by external tools to store and retrieve arbitrary metadata. They are not // queryable and should be preserved when modifying objects. // More info: http://kubernetes.io/docs/user-guide/annotations // +optional Annotations map[string]string `json:"annotations,omitempty"` // Route service traffic to pods with label keys and values matching this // selector. If empty or not present, the service is assumed to have an // external process managing its endpoints, which Kubernetes will not // modify. Only applies to types ClusterIP, NodePort, and LoadBalancer. // Ignored if type is ExternalName. // More info: https://kubernetes.io/docs/concepts/services-networking/service/ // +optional Labels map[string]string `json:"labels,omitempty"` // Type determines how the Service is exposed. Defaults to ClusterIP. Valid // options are ExternalName, ClusterIP, NodePort, and LoadBalancer. // "ExternalName" maps to the specified externalName. // "ClusterIP" allocates a cluster-internal IP address for load-balancing to // endpoints. Endpoints are determined by the selector or if that is not // specified, by manual construction of an Endpoints object. If clusterIP is // "None", no virtual IP is allocated and the endpoints are published as a // set of endpoints rather than a stable IP. // "NodePort" builds on ClusterIP and allocates a port on every node which // routes to the clusterIP. // "LoadBalancer" builds on NodePort and creates an // external load-balancer (if supported in the current cloud) which routes // to the clusterIP. // More info: https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services---service-types // +optional Type corev1.ServiceType `json:"type,omitempty"` // The port that are exposed by this service. // More info: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies Port int32 `json:"port,omitempty"` // The PortName that are exposed by this service. // More info: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies PortName string `json:"portName,omitempty"` // The port on each node on which this service is exposed when type=NodePort or LoadBalancer. // Usually assigned by the system. If specified, it will be allocated to the service // if unused or else creation of the service will fail. // Default is to auto-allocate a port if the ServiceType of this Service requires one. // More info: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport // +optional NodePort int32 `json:"nodePort,omitempty"` // If specified and supported by the platform, this will restrict traffic through the cloud-provider // load-balancer will be restricted to the specified client IPs. This field will be ignored if the // cloud-provider does not support the feature." // More info: https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/ // +optional LoadBalancerSourceRanges []string `json:"loadBalancerSourceRanges,omitempty"` // Only applies to Service Type: LoadBalancer // LoadBalancer will get created with the IP specified in this field. // This feature depends on whether the underlying cloud-provider supports specifying // the loadBalancerIP when a load balancer is created. // This field will be ignored if the cloud-provider does not support the feature. // +optional LoadBalancerIP string `json:"loadBalancerIP,omitempty"` }
Service defines Kubernetes service attributes
func (*Service) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service.
func (*Service) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceAccount ¶
type ServiceAccount struct { // Annotations is an unstructured key value map stored with a resource that may be // set by external tools to store and retrieve arbitrary metadata. They are not // queryable and should be preserved when modifying objects. // More info: http://kubernetes.io/docs/user-guide/annotations // +optional Annotations map[string]string `json:"annotations,omitempty"` }
ServiceAccount defines Kubernetes service account attributes
func (*ServiceAccount) DeepCopy ¶
func (in *ServiceAccount) DeepCopy() *ServiceAccount
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceAccount.
func (*ServiceAccount) DeepCopyInto ¶
func (in *ServiceAccount) DeepCopyInto(out *ServiceAccount)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.