service/jenkins/types.go (112 lines of code) (raw):

package jenkins import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/runtime" "time" ) // +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // +k8s:openapi-gen=true // +kubebuilder:subresource:status type JenkinsJobBuildRun struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec JenkinsJobBuildRunSpec `json:"spec,omitempty"` Status JenkinsJobBuildRunStatus `json:"status,omitempty"` } // +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object type JenkinsJobBuildRunList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []JenkinsJobBuildRun `json:"items"` } // +k8s:openapi-gen=true type JenkinsJobBuildRunSpec struct { JobPath string `json:"jobpath"` Params map[string]string `json:"params"` Retry int `json:"retry"` OwnerName *string `json:"ownerName,omitempty"` DeleteAfterCompletionInterval *string `json:"deleteAfterCompletionInterval,omitempty"` } func (in *JenkinsJobBuildRun) GetDeleteAfterCompletionInterval() time.Duration { if in.Spec.DeleteAfterCompletionInterval == nil { return time.Hour } dur, err := time.ParseDuration(*in.Spec.DeleteAfterCompletionInterval) if err != nil { return time.Hour } return dur } // +k8s:openapi-gen=true type JenkinsJobBuildRunStatus struct { Status string `json:"status"` Launches int `json:"launches"` BuildNumber int64 `json:"buildNumber"` LastUpdated time.Time `json:"lastUpdated"` } func (in *JenkinsJobBuildRunList) DeepCopyInto(out *JenkinsJobBuildRunList) { *out = *in out.TypeMeta = in.TypeMeta out.ListMeta = in.ListMeta if in.Items != nil { in, out := &in.Items, &out.Items *out = make([]JenkinsJobBuildRun, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } return } func (in *JenkinsJobBuildRunList) DeepCopy() *JenkinsJobBuildRunList { if in == nil { return nil } out := new(JenkinsJobBuildRunList) in.DeepCopyInto(out) return out } func (in *JenkinsJobBuildRunList) DeepCopyObject() runtime.Object { if c := in.DeepCopy(); c != nil { return c } return nil } func (in *JenkinsJobBuildRun) DeepCopyObject() runtime.Object { if c := in.DeepCopy(); c != nil { return c } return nil } func (in *JenkinsJobBuildRun) DeepCopyInto(out *JenkinsJobBuildRun) { *out = *in out.TypeMeta = in.TypeMeta in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) in.Spec.DeepCopyInto(&out.Spec) in.Status.DeepCopyInto(&out.Status) return } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JenkinsJob. func (in *JenkinsJobBuildRun) DeepCopy() *JenkinsJobBuildRun { if in == nil { return nil } out := new(JenkinsJobBuildRun) in.DeepCopyInto(out) return out } func (in *JenkinsJobBuildRunStatus) DeepCopyInto(out *JenkinsJobBuildRunStatus) { *out = *in } func (in *JenkinsJobBuildRunStatus) DeepCopy() *JenkinsJobBuildRunStatus { if in == nil { return nil } out := new(JenkinsJobBuildRunStatus) in.DeepCopyInto(out) return out } func (in *JenkinsJobBuildRunSpec) DeepCopyInto(out *JenkinsJobBuildRunSpec) { *out = *in return } func (in *JenkinsJobBuildRunSpec) DeepCopy() *JenkinsJobBuildRunSpec { if in == nil { return nil } out := new(JenkinsJobBuildRunSpec) in.DeepCopyInto(out) return out }