Documentation
¶
Overview ¶
Package v1 contains API Schema definitions for the cicd v1 API group +kubebuilder:object:generate=true +groupName=cicd.tmax.io
Index ¶
- Constants
- Variables
- func GetSecretName(configName string) string
- func GetServiceAccountName(configName string) string
- type Approval
- type ApprovalList
- type ApprovalResult
- type ApprovalSpec
- type ApprovalStatus
- type CommitStatusState
- type GitConfig
- type GitToken
- type GitTokenFrom
- type GitType
- type IntegrationConfig
- func (in *IntegrationConfig) DeepCopy() *IntegrationConfig
- func (in *IntegrationConfig) DeepCopyInto(out *IntegrationConfig)
- func (in *IntegrationConfig) DeepCopyObject() runtime.Object
- func (i *IntegrationConfig) GetToken(c client.Client) (string, error)
- func (i *IntegrationConfig) GetWebhookServerAddress() string
- type IntegrationConfigJobs
- type IntegrationConfigList
- type IntegrationConfigSpec
- type IntegrationConfigStatus
- type IntegrationJob
- type IntegrationJobConfigRef
- type IntegrationJobList
- type IntegrationJobRefs
- type IntegrationJobRefsBase
- type IntegrationJobRefsPull
- type IntegrationJobRefsPullAuthor
- type IntegrationJobSpec
- type IntegrationJobState
- type IntegrationJobStatus
- type Job
- type JobApproval
- type JobEmail
- type JobStatus
- type JobTaskRef
- type JobType
- type JobWhen
- type TektonTask
Constants ¶
const ( CustomTaskGroup = "cicd.tmax.io" CustomTaskVersion = "v1" )
const ( CustomTaskKindApproval = "ApprovalTask" CustomTaskApprovalParamKeyApprovers = "approvers" CustomTaskApprovalParamKeyApproversCM = "approvers-config-map" CustomTaskApprovalParamKeyMessage = "message" CustomTaskApprovalParamKeyIntegrationJob = "integration-job" CustomTaskApprovalParamKeyIntegrationJobJob = "integration-job-job" CustomTaskApprovalParamKeySender = "sender" CustomTaskApprovalParamKeyLink = "link" CustomTaskApprovalApproversConfigMapKey = "approvers" )
Approval
const ( CustomTaskKindEmail = "EmailTask" CustomTaskEmailParamKeyReceivers = "receivers" CustomTaskEmailParamKeyTitle = "title" CustomTaskEmailParamKeyContent = "content" CustomTaskEmailParamKeyIsHtml = "isHtml" )
const ( GithubDefaultApiUrl = "https://api.github.com" GithubDefaultHost = "https://github.com" GitlabDefaultApiUrl = "https://gitlab.com" GitlabDefaultHost = "https://gitlab.com" )
const ( GitTypeGitHub = GitType("github") GitTypeGitLab = GitType("gitlab") )
const ( IntegrationConfigConditionWebhookRegistered = status.ConditionType("webhook-registered") IntegrationConfigConditionReady = status.ConditionType("ready") )
const ( IntegrationJobStatePending = IntegrationJobState("Pending") IntegrationJobStateRunning = IntegrationJobState("Running") IntegrationJobStateCompleted = IntegrationJobState("Completed") IntegrationJobStateFailed = IntegrationJobState("Failed") )
const ( JobLabelPrefix = "cicd.tmax.io/" JobLabelConfig = JobLabelPrefix + "integration-config" JobLabelType = JobLabelPrefix + "integration-type" JobLabelId = JobLabelPrefix + "integration-id" JobLabelRepository = JobLabelPrefix + "repository" JobLabelPullRequest = JobLabelPrefix + "pull-request" RunLabelJob = JobLabelPrefix + "integration-job" RunLabelJobId = JobLabelPrefix + "integration-job-id" RunLabelRepository = JobLabelRepository RunLabelPullRequest = JobLabelPullRequest RunLabelPullRequestSha = JobLabelPrefix + "pull-request-sha" RunLabelSender = JobLabelPrefix + "sender" )
const ( JobTypePreSubmit = JobType("preSubmit") JobTypePostSubmit = JobType("postSubmit") )
const ( CommitStatusStateSuccess = CommitStatusState("success") CommitStatusStateFailure = CommitStatusState("failure") CommitStatusStateError = CommitStatusState("error") CommitStatusStatePending = CommitStatusState("pending") )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "cicd.tmax.io", Version: "v1"} // 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 CustomTaskApiVersion = fmt.Sprintf("%s/%s", CustomTaskGroup, CustomTaskVersion)
Functions ¶
func GetSecretName ¶
func GetServiceAccountName ¶
Types ¶
type Approval ¶
type Approval struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ApprovalSpec `json:"spec,omitempty"` Status ApprovalStatus `json:"status,omitempty"` }
Approval is the Schema for the approvals API +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.result",description="Current status of Approval" +kubebuilder:printcolumn:name="Created",type="date",JSONPath=".metadata.creationTimestamp",description="Created time" +kubebuilder:printcolumn:name="Decided",type="date",JSONPath=".status.decisionTime",description="Decided time"
func (*Approval) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Approval.
func (*Approval) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Approval) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ApprovalList ¶
type ApprovalList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Approval `json:"items"` }
ApprovalList contains a list of Approval
func (*ApprovalList) DeepCopy ¶
func (in *ApprovalList) DeepCopy() *ApprovalList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApprovalList.
func (*ApprovalList) DeepCopyInto ¶
func (in *ApprovalList) DeepCopyInto(out *ApprovalList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ApprovalList) DeepCopyObject ¶
func (in *ApprovalList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ApprovalResult ¶
type ApprovalResult string
const ( ApprovalResultWaiting ApprovalResult = "Waiting" ApprovalResultApproved ApprovalResult = "Approved" ApprovalResultRejected ApprovalResult = "Rejected" ApprovalResultError ApprovalResult = "Error" ApprovalConditionSentRequestMail = status.ConditionType("SentRequestMail") ApprovalConditionSentResultMail = status.ConditionType("SentResultMail") )
type ApprovalSpec ¶
type ApprovalSpec struct { // PodName represents the name of the pod to be approved to proceed // Deprecated: not used from HyperCloud5, only for the backward compatibility with HyperCloud4 PodName string `json:"podName,omitempty"` // SkipSendMail describes whether or not to send mail for request/result for approvers SkipSendMail bool `json:"skipSendMail,omitempty"` // PipelineRun points the actual pipeline run object which created this Approval PipelineRun string `json:"pipelineRun,omitempty"` // IntegrationJob is a related IntegrationJob name (maybe a grand-parent of Approval) IntegrationJob string `json:"integrationJob,omitempty"` // JobName is a name of actual job in IntegrationJob JobName string `json:"jobName,omitempty"` // Message is a message from requester Message string `json:"message,omitempty"` // Sender is a requester (probably be pull-request author or pusher) Sender string `json:"sender,omitempty"` // Link is a description link approvers may refer to Link string `json:"link,omitempty"` // Users are the list of the users who are requested to approve the Approval Users []string `json:"users"` }
ApprovalSpec defines the desired state of Approval
func (*ApprovalSpec) DeepCopy ¶
func (in *ApprovalSpec) DeepCopy() *ApprovalSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApprovalSpec.
func (*ApprovalSpec) DeepCopyInto ¶
func (in *ApprovalSpec) DeepCopyInto(out *ApprovalSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApprovalStatus ¶
type ApprovalStatus struct { // Decision result of Approval Result ApprovalResult `json:"result"` // Approver is a user who actually approved Approver string `json:"approver,omitempty"` // Decision message Reason string `json:"reason,omitempty"` // Decision time of Approval DecisionTime *metav1.Time `json:"decisionTime,omitempty"` // Conditions of Approval Conditions status.Conditions `json:"conditions"` }
ApprovalStatus defines the observed state of Approval
func (*ApprovalStatus) DeepCopy ¶
func (in *ApprovalStatus) DeepCopy() *ApprovalStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApprovalStatus.
func (*ApprovalStatus) DeepCopyInto ¶
func (in *ApprovalStatus) DeepCopyInto(out *ApprovalStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ApprovalStatus) GetDecisionTimeInZone ¶
func (a *ApprovalStatus) GetDecisionTimeInZone(zone string) (*time.Time, error)
type CommitStatusState ¶
type CommitStatusState string
type GitConfig ¶
type GitConfig struct { // Type for git remote server // +kubebuilder:validation:Enum=github;gitlab Type GitType `json:"type"` // Repository name of git repository (in <org>/<repo> form, e.g., tmax-cloud/cicd-operator) // +kubebuilder:validation:Pattern=.+/.+ Repository string `json:"repository"` // ApiUrl for api server (e.g., https://api.github.com for github type), // for the case where the git repository is self-hosted (should contain specific protocol otherwise webhook server returns error) ApiUrl string `json:"apiUrl,omitempty"` // Token Token GitToken `json:"token"` }
func (*GitConfig) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitConfig.
func (*GitConfig) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GitToken ¶
type GitToken struct { // Value is un-encrypted plain string of git token, not recommended Value string `json:"value,omitempty"` // ValueFrom refers secret. Recommended ValueFrom *GitTokenFrom `json:"valueFrom,omitempty"` }
func (*GitToken) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitToken.
func (*GitToken) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GitTokenFrom ¶
type GitTokenFrom struct {
SecretKeyRef corev1.SecretKeySelector `json:"secretKeyRef"`
}
func (*GitTokenFrom) DeepCopy ¶
func (in *GitTokenFrom) DeepCopy() *GitTokenFrom
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitTokenFrom.
func (*GitTokenFrom) DeepCopyInto ¶
func (in *GitTokenFrom) DeepCopyInto(out *GitTokenFrom)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IntegrationConfig ¶
type IntegrationConfig struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec IntegrationConfigSpec `json:"spec,omitempty"` Status IntegrationConfigStatus `json:"status,omitempty"` }
IntegrationConfig is the Schema for the integrationconfigs API +kubebuilder:resource:shortName="ic"
func (*IntegrationConfig) DeepCopy ¶
func (in *IntegrationConfig) DeepCopy() *IntegrationConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationConfig.
func (*IntegrationConfig) DeepCopyInto ¶
func (in *IntegrationConfig) DeepCopyInto(out *IntegrationConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IntegrationConfig) DeepCopyObject ¶
func (in *IntegrationConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*IntegrationConfig) GetToken ¶
func (i *IntegrationConfig) GetToken(c client.Client) (string, error)
func (*IntegrationConfig) GetWebhookServerAddress ¶
func (i *IntegrationConfig) GetWebhookServerAddress() string
Returns Server address which webhook events will be received
type IntegrationConfigJobs ¶
type IntegrationConfigJobs struct { // PreSubmit jobs are for pull-request events PreSubmit []Job `json:"preSubmit,omitempty"` // PostSubmit jobs are for push events (including tag events) PostSubmit []Job `json:"postSubmit,omitempty"` }
func (*IntegrationConfigJobs) DeepCopy ¶
func (in *IntegrationConfigJobs) DeepCopy() *IntegrationConfigJobs
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationConfigJobs.
func (*IntegrationConfigJobs) DeepCopyInto ¶
func (in *IntegrationConfigJobs) DeepCopyInto(out *IntegrationConfigJobs)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IntegrationConfigList ¶
type IntegrationConfigList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []IntegrationConfig `json:"items"` }
IntegrationConfigList contains a list of IntegrationConfig
func (*IntegrationConfigList) DeepCopy ¶
func (in *IntegrationConfigList) DeepCopy() *IntegrationConfigList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationConfigList.
func (*IntegrationConfigList) DeepCopyInto ¶
func (in *IntegrationConfigList) DeepCopyInto(out *IntegrationConfigList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IntegrationConfigList) DeepCopyObject ¶
func (in *IntegrationConfigList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type IntegrationConfigSpec ¶
type IntegrationConfigSpec struct { // Git config for target repository Git GitConfig `json:"git"` // Secrets are the list of secret names which are included in service account Secrets []corev1.LocalObjectReference `json:"secrets,omitempty"` // Workspaces list Workspaces []tektonv1beta1.WorkspaceBinding `json:"workspaces,omitempty"` // Jobs specify the tasks to be executed Jobs IntegrationConfigJobs `json:"jobs"` }
IntegrationConfigSpec defines the desired state of IntegrationConfig
func (*IntegrationConfigSpec) DeepCopy ¶
func (in *IntegrationConfigSpec) DeepCopy() *IntegrationConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationConfigSpec.
func (*IntegrationConfigSpec) DeepCopyInto ¶
func (in *IntegrationConfigSpec) DeepCopyInto(out *IntegrationConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IntegrationConfigStatus ¶
type IntegrationConfigStatus struct { // Conditions of IntegrationConfig Conditions status.Conditions `json:"conditions"` Secrets string `json:"secrets,omitempty"` }
IntegrationConfigStatus defines the observed state of IntegrationConfig
func (*IntegrationConfigStatus) DeepCopy ¶
func (in *IntegrationConfigStatus) DeepCopy() *IntegrationConfigStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationConfigStatus.
func (*IntegrationConfigStatus) DeepCopyInto ¶
func (in *IntegrationConfigStatus) DeepCopyInto(out *IntegrationConfigStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IntegrationJob ¶
type IntegrationJob struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec IntegrationJobSpec `json:"spec,omitempty"` Status IntegrationJobStatus `json:"status,omitempty"` }
IntegrationJob is the Schema for the integrationjobs API +kubebuilder:resource:shortName="ij" +kubebuilder:printcolumn:name="State",type="string",JSONPath=".status.state",description="Current status of IntegrationJob" +kubebuilder:printcolumn:name="StartTime",type="date",JSONPath=".status.startTime",description="Start time" +kubebuilder:printcolumn:name="CompletionTime",type="date",JSONPath=".status.completionTime",description="Completion time"
func (*IntegrationJob) DeepCopy ¶
func (in *IntegrationJob) DeepCopy() *IntegrationJob
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationJob.
func (*IntegrationJob) DeepCopyInto ¶
func (in *IntegrationJob) DeepCopyInto(out *IntegrationJob)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IntegrationJob) DeepCopyObject ¶
func (in *IntegrationJob) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*IntegrationJob) GetReportServerAddress ¶
func (i *IntegrationJob) GetReportServerAddress(jobName string) string
Returns Server address for reports (IntegrationJob details)
type IntegrationJobConfigRef ¶
func (*IntegrationJobConfigRef) DeepCopy ¶
func (in *IntegrationJobConfigRef) DeepCopy() *IntegrationJobConfigRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationJobConfigRef.
func (*IntegrationJobConfigRef) DeepCopyInto ¶
func (in *IntegrationJobConfigRef) DeepCopyInto(out *IntegrationJobConfigRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IntegrationJobList ¶
type IntegrationJobList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []IntegrationJob `json:"items"` }
IntegrationJobList contains a list of IntegrationJob
func (*IntegrationJobList) DeepCopy ¶
func (in *IntegrationJobList) DeepCopy() *IntegrationJobList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationJobList.
func (*IntegrationJobList) DeepCopyInto ¶
func (in *IntegrationJobList) DeepCopyInto(out *IntegrationJobList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IntegrationJobList) DeepCopyObject ¶
func (in *IntegrationJobList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type IntegrationJobRefs ¶
type IntegrationJobRefs struct { // Repository name of git repository (in <org>/<repo> form, e.g., tmax-cloud/cicd-operator) // +kubebuilder:validation:Pattern=.+/.+ Repository string `json:"repository"` // Link is a full url of the repository Link string `json:"link"` // Sender is a git user who triggered the webhook Sender string `json:"sender"` // Base is a base pointer for base commit for the pull request // If Pull is nil (i.e., is push event), Base works as Head Base IntegrationJobRefsBase `json:"base"` // Pull represents pull request head commit Pull *IntegrationJobRefsPull `json:"pull,omitempty"` }
func (*IntegrationJobRefs) DeepCopy ¶
func (in *IntegrationJobRefs) DeepCopy() *IntegrationJobRefs
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationJobRefs.
func (*IntegrationJobRefs) DeepCopyInto ¶
func (in *IntegrationJobRefs) DeepCopyInto(out *IntegrationJobRefs)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IntegrationJobRefsBase ¶
type IntegrationJobRefsBase struct { Ref string `json:"ref"` Link string `json:"link"` Sha string `json:"sha"` }
func (*IntegrationJobRefsBase) DeepCopy ¶
func (in *IntegrationJobRefsBase) DeepCopy() *IntegrationJobRefsBase
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationJobRefsBase.
func (*IntegrationJobRefsBase) DeepCopyInto ¶
func (in *IntegrationJobRefsBase) DeepCopyInto(out *IntegrationJobRefsBase)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IntegrationJobRefsPull ¶
type IntegrationJobRefsPull struct { Id int `json:"id"` Ref string `json:"ref"` Sha string `json:"sha"` Link string `json:"link"` Author IntegrationJobRefsPullAuthor `json:"author"` }
func (*IntegrationJobRefsPull) DeepCopy ¶
func (in *IntegrationJobRefsPull) DeepCopy() *IntegrationJobRefsPull
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationJobRefsPull.
func (*IntegrationJobRefsPull) DeepCopyInto ¶
func (in *IntegrationJobRefsPull) DeepCopyInto(out *IntegrationJobRefsPull)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IntegrationJobRefsPullAuthor ¶
type IntegrationJobRefsPullAuthor struct {
Name string `json:"name"`
}
func (*IntegrationJobRefsPullAuthor) DeepCopy ¶
func (in *IntegrationJobRefsPullAuthor) DeepCopy() *IntegrationJobRefsPullAuthor
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationJobRefsPullAuthor.
func (*IntegrationJobRefsPullAuthor) DeepCopyInto ¶
func (in *IntegrationJobRefsPullAuthor) DeepCopyInto(out *IntegrationJobRefsPullAuthor)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IntegrationJobSpec ¶
type IntegrationJobSpec struct { // ConfigRef refers to the corresponding IntegrationConfig ConfigRef IntegrationJobConfigRef `json:"configRef"` // Id is a unique random string for the IntegrationJob Id string `json:"id"` // Workspaces list Workspaces []tektonv1beta1.WorkspaceBinding `json:"workspaces,omitempty"` // Jobs are the tasks to be executed Jobs []Job `json:"jobs"` // Refs Refs IntegrationJobRefs `json:"refs"` }
IntegrationJobSpec defines the desired state of IntegrationJob
func (*IntegrationJobSpec) DeepCopy ¶
func (in *IntegrationJobSpec) DeepCopy() *IntegrationJobSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationJobSpec.
func (*IntegrationJobSpec) DeepCopyInto ¶
func (in *IntegrationJobSpec) DeepCopyInto(out *IntegrationJobSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IntegrationJobState ¶
type IntegrationJobState string
type IntegrationJobStatus ¶
type IntegrationJobStatus struct { // State is a current state of the IntegrationJob State IntegrationJobState `json:"state"` // Message is a message for the IntegrationJob (normally an error string) Message string `json:"message,omitempty"` // StartTime is actual time the task started StartTime *metav1.Time `json:"startTime,omitempty"` // CompletionTime is a time when the job is completed CompletionTime *metav1.Time `json:"completionTime,omitempty"` // Jobs are status list for each Job in the IntegrationJob Jobs []JobStatus `json:"jobs,omitempty"` }
IntegrationJobStatus defines the observed state of IntegrationJob
func (*IntegrationJobStatus) DeepCopy ¶
func (in *IntegrationJobStatus) DeepCopy() *IntegrationJobStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationJobStatus.
func (*IntegrationJobStatus) DeepCopyInto ¶
func (in *IntegrationJobStatus) DeepCopyInto(out *IntegrationJobStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IntegrationJobStatus) SetDefaults ¶
func (s *IntegrationJobStatus) SetDefaults() error
type Job ¶
type Job struct { corev1.Container `json:",inline"` // Script will override command of container Script string `json:"script,omitempty"` // TektonTask is for referring local Tasks or the Tasks registered in tekton catalog github repo. // Not implemented yet TektonTask *TektonTask `json:"tektonTask,omitempty"` // SkipCheckout describes whether or not to checkout from git before SkipCheckout bool `json:"skipCheckout,omitempty"` // When is condition for running the job When *JobWhen `json:"when,omitempty"` // After configures which jobs should be executed before this job runs After []string `json:"after,omitempty"` // Approval Approval *JobApproval `json:"approval,omitempty"` // Email Email *JobEmail `json:"email,omitempty"` }
func (*Job) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Job.
func (*Job) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JobApproval ¶
type JobApproval struct { // Approvers is a list of approvers, in a form of <User name>=<Email> (Email is optional) // e.g., admin-tmax.co.kr // e.g., admin-tmax.co.kr=sunghyun_kim3@tmax.co.kr Approvers []string `json:"approvers,omitempty"` // ApproversConfigMap is a configMap Name containing // approvers list should exist in configMap's 'approvers' key, as comma(,) separated list // e.g., admin-tmax.co.kr=sunghyun_kim3@tmax.co.kr,test-tmax.co.kr=kyunghoon_min@tmax.co.kr ApproversConfigMap *corev1.LocalObjectReference `json:"approversConfigMap,omitempty"` // RequestMessage is a message to be sent to approvers by email RequestMessage string `json:"requestMessage"` }
JobApproval describes who can approve it
func (*JobApproval) DeepCopy ¶
func (in *JobApproval) DeepCopy() *JobApproval
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobApproval.
func (*JobApproval) DeepCopyInto ¶
func (in *JobApproval) DeepCopyInto(out *JobApproval)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JobEmail ¶
type JobEmail struct { // Receivers is a list of email receivers Receivers []string `json:"receivers,omitempty"` // Title of the email Title string `json:"title"` // Content of the email Content string `json:"content"` // IsHtml describes if it's html content IsHtml bool `json:"isHtml,omitempty"` }
JobEmail sends email to receivers
func (*JobEmail) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobEmail.
func (*JobEmail) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JobStatus ¶
type JobStatus struct { // Name is a job name Name string `json:"name"` // StartTime is a timestamp when the job is started StartTime *metav1.Time `json:"startTime,omitempty"` // CompletionTime is a timestamp when the job is started CompletionTime *metav1.Time `json:"completionTime,omitempty"` // State is current state of this job // It is actually a conversion of tekton task run's Status.Conditions[0].Reason State CommitStatusState `json:"state"` // Message is current state description for this job // It is actually tekton task run's Status.Conditions[0].Message Message string `json:"message"` // PodName is a name of pod where the job is running PodName string `json:"podName,omitempty"` // Containers is status list for each step in the job Containers []tektonv1beta1.StepState `json:"containers,omitempty"` }
JobStatus is a current status for each job
func (*JobStatus) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobStatus.
func (*JobStatus) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JobTaskRef ¶
type JobTaskRef struct { // Name for local Tasks Name string `json:"name,omitempty"` // Catalog is a name of the task @ tekton catalog github repo. (e.g., s2i@0.2) // FYI: https://github.com/tektoncd/catalog Catalog string `json:"catalog,omitempty"` }
func (*JobTaskRef) DeepCopy ¶
func (in *JobTaskRef) DeepCopy() *JobTaskRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobTaskRef.
func (*JobTaskRef) DeepCopyInto ¶
func (in *JobTaskRef) DeepCopyInto(out *JobTaskRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JobWhen ¶
type JobWhen struct { Branch []string `json:"branch,omitempty"` SkipBranch []string `json:"skipBranch,omitempty"` Tag []string `json:"tag,omitempty"` SkipTag []string `json:"skipTag,omitempty"` }
func (*JobWhen) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobWhen.
func (*JobWhen) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TektonTask ¶
type TektonTask struct { // TaskRef refers to the existing Task in local cluster or to the tekton catalog github repo. TaskRef JobTaskRef `json:"taskRef"` // Params are input params for the task Params []tektonv1beta1.Param `json:"params,omitempty"` // Resources are input/output resources for the task Resources *tektonv1beta1.TaskRunResources `json:"resources,omitempty"` // Workspaces are workspaces for the task Workspaces []tektonv1beta1.WorkspaceBinding `json:"workspaces,omitempty"` }
func (*TektonTask) DeepCopy ¶
func (in *TektonTask) DeepCopy() *TektonTask
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TektonTask.
func (*TektonTask) DeepCopyInto ¶
func (in *TektonTask) DeepCopyInto(out *TektonTask)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.