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 ConvertToTektonParamSpecs(params []ParameterDefine) []tektonv1beta1.ParamSpec
- func ConvertToTektonParams(params []ParameterValue) []tektonv1beta1.Param
- func GetSecretName(configName string) string
- func GetServiceAccountName(configName string) string
- type Approval
- type ApprovalAPIReqBody
- type ApprovalList
- type ApprovalResult
- type ApprovalSpec
- type ApprovalStatus
- type ApprovalUser
- type CommitStatusState
- type GitConfig
- type GitRef
- 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) GetDuration() *metav1.Duration
- func (i *IntegrationConfig) GetTLSConfig() *tls.Config
- func (i *IntegrationConfig) GetToken(c client.Client) (string, error)
- func (i *IntegrationConfig) GetWebhookServerAddress() string
- type IntegrationConfigAPIReqRunPostBody
- type IntegrationConfigAPIReqRunPreBody
- type IntegrationConfigAPIReqWebhookURL
- type IntegrationConfigJobs
- type IntegrationConfigList
- type IntegrationConfigSpec
- type IntegrationConfigStatus
- type IntegrationJob
- type IntegrationJobConfigRef
- type IntegrationJobList
- type IntegrationJobManageSpec
- type IntegrationJobRefs
- type IntegrationJobRefsBase
- type IntegrationJobRefsPull
- type IntegrationJobRefsPullAuthor
- type IntegrationJobSender
- type IntegrationJobSpec
- type IntegrationJobState
- type IntegrationJobStatus
- type Job
- type JobApproval
- type JobStatus
- type JobTaskRef
- type JobType
- type JobWhen
- type Jobs
- type MergeConfig
- type MergeQuery
- type NotiEmail
- type NotiSlack
- type NotiWebhook
- type Notification
- type NotificationMethods
- type ParameterConfig
- type ParameterDefine
- type ParameterValue
- type Periodic
- type Periodics
- type TLSConfig
- type TektonTask
Constants ¶
const ( ApprovalConditionSentRequestMail = "SentRequestMail" ApprovalConditionSentResultMail = "SentResultMail" )
Condition keys for Approval
const ( ApprovalAPIApprove = "approve" ApprovalAPIReject = "reject" )
Approval API kinds
const ( CustomTaskGroup = "cicd.tmax.io" CustomTaskVersion = "v1" )
API group and version for the custom tasks
const ( CustomTaskKindApproval = "ApprovalTask" CustomTaskApprovalParamKeyApprovers = "approvers" CustomTaskApprovalParamKeyApproversCM = "approvers-config-map" CustomTaskApprovalParamKeyMessage = "message" CustomTaskApprovalParamKeyBody = "body" CustomTaskApprovalParamKeyIntegrationJob = "integration-job" CustomTaskApprovalParamKeyIntegrationJobJob = "integration-job-job" CustomTaskApprovalParamKeySenderName = "senderName" CustomTaskApprovalParamKeySenderEmail = "senderEmail" CustomTaskApprovalParamKeyLink = "link" CustomTaskApprovalApproversConfigMapKey = "approvers" )
Approval custom tasks
const ( CustomTaskKindEmail = "EmailTask" CustomTaskEmailParamKeyReceivers = "receivers" CustomTaskEmailParamKeyTitle = "title" CustomTaskEmailParamKeyContent = "content" CustomTaskEmailParamKeyIsHTML = "isHtml" CustomTaskEmailParamKeyIntegrationJobJob = CustomTaskApprovalParamKeyIntegrationJobJob CustomTaskEmailParamKeyIntegrationJob = CustomTaskApprovalParamKeyIntegrationJob )
Email custom tasks
const ( CustomTaskKindSlack = "SlackTask" CustomTaskSlackParamKeyWebhook = "webhook-url" CustomTaskSlackParamKeyMessage = CustomTaskApprovalParamKeyMessage CustomTaskSlackParamKeyIntegrationJob = CustomTaskApprovalParamKeyIntegrationJob CustomTaskSlackParamKeyIntegrationJobJob = CustomTaskApprovalParamKeyIntegrationJobJob )
Slack custom tasks
const ( CustomTaskKindWebHook = "WebhookTask" CustomTaskWebhookParamKeyURL = "webhook-url" CustomTaskWebhookParamKeyBody = CustomTaskApprovalParamKeyBody CustomTaskWebHookParamKeyIntegrationJobJob = CustomTaskApprovalParamKeyIntegrationJobJob CustomTaskWebHookParamKeyIntegrationJob = CustomTaskApprovalParamKeyIntegrationJob )
WebHook custom tasks
const ( GithubDefaultAPIUrl = "https://api.github.com" GithubDefaultHost = "https://github.com" GitlabDefaultAPIUrl = "https://gitlab.com" GitlabDefaultHost = "https://gitlab.com" GiteaDefaultAPIUrl = "https://gitea.com" GiteaDefaultHost = "https://gitea.com" )
Default hosts for remote git servers
const ( GitTypeGitHub = GitType("github") GitTypeGitLab = GitType("gitlab") GitTypeGitea = GitType("gitea") GitTypeFake = GitType("fake") )
Git Types
const ( IntegrationConfigConditionWebhookRegistered = "webhook-registered" IntegrationConfigConditionReady = "ready" )
Condition keys for IntegrationConfig
const ( IntegrationConfigAPIRunPre = "runpre" IntegrationConfigAPIRunPost = "runpost" IntegrationConfigAPIWebhookURL = "webhookurl" )
IntegrationConfig's API kinds
const ( IntegrationJobStatePending = IntegrationJobState("Pending") IntegrationJobStateRunning = IntegrationJobState("Running") IntegrationJobStateCompleted = IntegrationJobState("Completed") IntegrationJobStateFailed = IntegrationJobState("Failed") )
IntegrationJob's states
const ( // JobLabelPrefix is a prefix of every labels 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" )
Labels for IntegrationJobs or PipelineRuns
const ( // JobTypePreSubmit is a pre-submit type (pull-request or merge-request) JobTypePreSubmit = JobType("preSubmit") // JobTypePostSubmit is a post-submit type (push or tag-push) JobTypePostSubmit = JobType("postSubmit") // JobTypePeriodic is a periodic type JobTypePeriodic = JobType("periodic") )
const ( CommitStatusStateSuccess = CommitStatusState("success") CommitStatusStateFailure = CommitStatusState("failure") CommitStatusStateError = CommitStatusState("error") CommitStatusStatePending = CommitStatusState("pending") )
Job's commit state
const ApprovalKind = "approvals"
ApprovalKind is a kind string
const (
IntegrationConfigConditionReasonNoGitToken = "noGitToken"
)
IntegrationConfigConditionReasonNoGitToken is a Reason key
const (
IntegrationConfigKind = "integrationconfigs"
)
IntegrationConfigKind is kind string
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)
CustomTaskAPIVersion is
Functions ¶
func ConvertToTektonParamSpecs ¶ added in v0.5.1
func ConvertToTektonParamSpecs(params []ParameterDefine) []tektonv1beta1.ParamSpec
ConvertToTektonParamSpecs converts ParameterDefine array to tekton ParamSpec array
func ConvertToTektonParams ¶ added in v0.5.1
func ConvertToTektonParams(params []ParameterValue) []tektonv1beta1.Param
ConvertToTektonParams convert ParameterValue array to tekton Param array
func GetSecretName ¶
GetSecretName returns the name of related secret
func GetServiceAccountName ¶
GetServiceAccountName returns the name of the related ServiceAccount
Types ¶
type Approval ¶
type Approval struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ApprovalSpec `json:"spec"`
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 ApprovalAPIReqBody ¶ added in v0.2.3
type ApprovalAPIReqBody struct {
Reason string `json:"reason"`
}
ApprovalAPIReqBody is a body struct for Approval's api request +kubebuilder:object:generate=false
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
ApprovalResult is a result of the Approval
const ( ApprovalResultAwaiting ApprovalResult = "Awaiting" ApprovalResultApproved ApprovalResult = "Approved" ApprovalResultRejected ApprovalResult = "Rejected" ApprovalResultError ApprovalResult = "Error" )
Results
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 *ApprovalUser `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 []ApprovalUser `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 []metav1.Condition `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)
GetDecisionTimeInZone converts the time into the specific time zone
type ApprovalUser ¶ added in v0.5.0
ApprovalUser is a user
func (*ApprovalUser) DeepCopy ¶ added in v0.5.0
func (in *ApprovalUser) DeepCopy() *ApprovalUser
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApprovalUser.
func (*ApprovalUser) DeepCopyInto ¶ added in v0.5.0
func (in *ApprovalUser) DeepCopyInto(out *ApprovalUser)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CommitStatusState ¶
type CommitStatusState string
CommitStatusState is a state of git commit status
type GitConfig ¶
type GitConfig struct {
// Type for git remote server
// +kubebuilder:validation:Enum=github;gitlab;gitea
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)
// Also, it should *NOT* contain repository path (e.g., tmax-cloud/cicd-operator)
APIUrl string `json:"apiUrl,omitempty"`
// Token is a token for accessing the remote git server. It can be empty, if you don't want to register a webhook
// to the git server
Token *GitToken `json:"token,omitempty"`
}
GitConfig is a git repository where the IntegrationConfig to be configured
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.
func (*GitConfig) GetGitHost ¶
GetGitHost gets git host
type GitRef ¶ added in v0.2.3
type GitRef string
GitRef is a git reference type
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"`
}
GitToken is a token for accessing the remote git server
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"`
}
GitTokenFrom refers to the secret for the access token
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"`
Status IntegrationConfigStatus `json:"status,omitempty"`
}
IntegrationConfig is the Schema for the integrationconfigs API +kubebuilder:resource:shortName="ic" +kubebuilder:printcolumn:name="Ready",type=string,JSONPath=`.status.conditions[?(@.type=="ready")].status` +kubebuilder:printcolumn:name="WebhookRegistered",type=string,JSONPath=`.status.conditions[?(@.type=="webhook-registered")].status` +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="Creation time"
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) GetDuration ¶ added in v0.5.1
func (i *IntegrationConfig) GetDuration() *metav1.Duration
GetDuration returns timeout duration. Default is TTL value
func (*IntegrationConfig) GetTLSConfig ¶ added in v0.5.2
func (i *IntegrationConfig) GetTLSConfig() *tls.Config
GetTLSConfig returns tls config from integration configs' tlsConfig
func (*IntegrationConfig) GetToken ¶
func (i *IntegrationConfig) GetToken(c client.Client) (string, error)
GetToken fetches git access token from IntegrationConfig
func (*IntegrationConfig) GetWebhookServerAddress ¶
func (i *IntegrationConfig) GetWebhookServerAddress() string
GetWebhookServerAddress returns Server address which webhook events will be received
type IntegrationConfigAPIReqRunPostBody ¶ added in v0.2.3
type IntegrationConfigAPIReqRunPostBody struct {
Branch string `json:"branch"`
}
IntegrationConfigAPIReqRunPostBody is a body struct for IntegrationConfig's api request +kubebuilder:object:generate=false
type IntegrationConfigAPIReqRunPreBody ¶ added in v0.2.3
type IntegrationConfigAPIReqRunPreBody struct {
BaseBranch string `json:"base_branch"`
HeadBranch string `json:"head_branch"`
}
IntegrationConfigAPIReqRunPreBody is a body struct for IntegrationConfig's api request +kubebuilder:object:generate=false
type IntegrationConfigAPIReqWebhookURL ¶ added in v0.2.3
type IntegrationConfigAPIReqWebhookURL struct {
URL string `json:"url"`
Secret string `json:"secret"`
}
IntegrationConfigAPIReqWebhookURL is a body struct for IntegrationConfig's api request +kubebuilder:object:generate=false
type IntegrationConfigJobs ¶
type IntegrationConfigJobs struct {
// PreSubmit jobs are for pull-request events
PreSubmit Jobs `json:"preSubmit,omitempty"`
// PostSubmit jobs are for push events (including tag events)
PostSubmit Jobs `json:"postSubmit,omitempty"`
// Periodic are Periodicjobs can be run periodically
Periodic Periodics `json:"periodic,omitempty"`
}
IntegrationConfigJobs categorizes jobs into three types (pre-submit, post-submit and periodic jobs)
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"`
// MergeConfig specifies how to automate the PR merge
MergeConfig *MergeConfig `json:"mergeConfig,omitempty"`
// PodTemplate for the TaskRun pods. Same as tekton's pod template. Refer to https://github.com/tektoncd/pipeline/blob/master/docs/podtemplates.md
PodTemplate *pod.Template `json:"podTemplate,omitempty"`
// RequestBodyLogging is a boolean, which determines whether to enable logging reqeustBody coming toward webhook
RequestBodyLogging bool `json:"requestBodyLogging,omitempty"`
// IJManageSpec defines variables to manage created integration jobs
IJManageSpec IntegrationJobManageSpec `json:"ijManageSpec,omitempty"`
// ParamConfig specifies parameter
ParamConfig *ParameterConfig `json:"paramConfig,omitempty"`
// TLSConfig set tls configurations
TLSConfig *TLSConfig `json:"tlsConfig,omitempty"`
// When is condition for running the job in global scope
When *JobWhen `json:"when,omitempty"`
// GolbalNotification sends notification when success/fail
GolbalNotification *Notification `json:"globalNotification,omitempty"`
}
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 []metav1.Condition `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"`
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" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="Creation 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
GetReportServerAddress returns Server address for reports (IntegrationJob details)
func (*IntegrationJob) IsCompleted ¶ added in v0.5.1
func (i *IntegrationJob) IsCompleted() bool
IsCompleted returns whether or not a job have been completed
type IntegrationJobConfigRef ¶
IntegrationJobConfigRef refers to the IntegrationConfig
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 IntegrationJobManageSpec ¶ added in v0.5.1
type IntegrationJobManageSpec struct {
// Timeout for pending integration job gc
Timeout *metav1.Duration `json:"timeout,omitempty"`
}
IntegrationJobManageSpec contains spec for ij managing
func (*IntegrationJobManageSpec) DeepCopy ¶ added in v0.5.1
func (in *IntegrationJobManageSpec) DeepCopy() *IntegrationJobManageSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationJobManageSpec.
func (*IntegrationJobManageSpec) DeepCopyInto ¶ added in v0.5.1
func (in *IntegrationJobManageSpec) DeepCopyInto(out *IntegrationJobManageSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 *IntegrationJobSender `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"`
// Pulls are array for pull request head commit
Pulls []IntegrationJobRefsPull `json:"pulls,omitempty"`
}
IntegrationJobRefs describes the git event
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 GitRef `json:"ref"`
Link string `json:"link"`
Sha string `json:"sha"`
}
IntegrationJobRefsBase refers to the base commit
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 GitRef `json:"ref"`
Sha string `json:"sha"`
Link string `json:"link"`
Author IntegrationJobRefsPullAuthor `json:"author"`
}
IntegrationJobRefsPull refers to the pull request
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"`
}
IntegrationJobRefsPullAuthor is an author of the pull request
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 IntegrationJobSender ¶ added in v0.1.4
type IntegrationJobSender struct {
Name string `json:"name"`
Email string `json:"email,omitempty"`
}
IntegrationJobSender is a git user who triggered the IntegrationJob
func (*IntegrationJobSender) DeepCopy ¶ added in v0.1.4
func (in *IntegrationJobSender) DeepCopy() *IntegrationJobSender
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationJobSender.
func (*IntegrationJobSender) DeepCopyInto ¶ added in v0.1.4
func (in *IntegrationJobSender) DeepCopyInto(out *IntegrationJobSender)
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 Jobs `json:"jobs"`
// Refs
Refs IntegrationJobRefs `json:"refs"`
// PodTemplate for the TaskRun pods. Same as tekton's pod template
PodTemplate *pod.Template `json:"podTemplate,omitempty"`
// Timeout for pending status garbage collection
Timeout *metav1.Duration `json:"timeout,omitempty"`
// ParamConfig specifies parameter
ParamConfig *ParameterConfig `json:"paramConfig,omitempty"`
}
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
IntegrationJobState is a state of the IntegrationJob
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()
SetDefaults sets default values for the status
type Job ¶
type Job struct {
corev1.Container `json:",inline"`
// Script will override command of container
Script string `json:"script,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"`
// TektonTask is for referring local Tasks or the Tasks registered in tekton catalog github repo.
TektonTask *TektonTask `json:"tektonTask,omitempty"`
// Approval
Approval *JobApproval `json:"approval,omitempty"`
// NotificationMethods sends noti, not running the tasks
NotificationMethods `json:",inline"`
// Notification sends notification when success/fail
Notification *Notification `json:"notification,omitempty"`
// TektonWhen is for conditional execution. Input can be parameters or results
TektonWhen tektonv1beta1.WhenExpressions `json:"tektonWhen,omitempty"`
// Results emitted by task, which also can be used as TektonWhen input value.
Results []tektonv1beta1.TaskResult `json:"results,omitempty"`
}
Job is a specification of the job to be executed for specific events Same level of task of tekton
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
Approvers []ApprovalUser `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 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 {
// Local refers to local tasks/cluster tasks
Local *tektonv1beta1.TaskRef `json:"local,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"`
}
JobTaskRef refers to the tekton task, both local and in catalog
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"`
}
JobWhen describes when the Job should be executed All fields should be regular expressions
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 Jobs ¶ added in v0.2.0
type Jobs []Job
Jobs is an array of Job
func (Jobs) DeepCopy ¶ added in v0.2.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Jobs.
func (Jobs) DeepCopyInto ¶ added in v0.2.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MergeConfig ¶ added in v0.3.0
type MergeConfig struct {
// Method is a merge method
// +kubebuilder:validation:Enum=squash;merge
Method git.MergeMethod `json:"method,omitempty"`
// CommitTemplate is a message template for a merge commit.
// The commit message is compiled as a go template using blocker.PullRequest object.
CommitTemplate string `json:"commitTemplate,omitempty"`
// Query is conditions for a open PR to be merged
Query MergeQuery `json:"query"`
}
MergeConfig is a config struct of the merge automation feature
func (*MergeConfig) DeepCopy ¶ added in v0.3.0
func (in *MergeConfig) DeepCopy() *MergeConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MergeConfig.
func (*MergeConfig) DeepCopyInto ¶ added in v0.3.0
func (in *MergeConfig) DeepCopyInto(out *MergeConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MergeQuery ¶ added in v0.3.0
type MergeQuery struct {
// Labels specify the required labels of PR to be merged
Labels []string `json:"labels,omitempty"`
// BlockLabels specify the required labels of PR to be blocked for merge
BlockLabels []string `json:"blockLabels,omitempty"`
// Authors specify the required authors of PR to be merged
// Authors and SkipAuthors are mutually exclusive
Authors []string `json:"authors,omitempty"`
// SkipAuthors specify the required authors of PR to be blocked for merge
// Authors and SkipAuthors are mutually exclusive
SkipAuthors []string `json:"skipAuthors,omitempty"`
// Branches specify the required base branches of PR to be merged
// Branches and SkipBranches are mutually exclusive
Branches []string `json:"branches,omitempty"`
// SkipBranches specify the required base branches of PR to be blocked for merge
// Branches and SkipBranches are mutually exclusive
SkipBranches []string `json:"skipBranches,omitempty"`
// Checks are checks needed to be passed for the PR to be merged.
// Checks and OptionalChecks are mutually exclusive
Checks []string `json:"checks,omitempty"`
// OptionalChecks are checks that are not required.
// Checks and OptionalChecks are mutually exclusive
OptionalChecks []string `json:"optionalChecks,omitempty"`
// ApproveRequired specifies whether to check github/gitlab's approval
ApproveRequired bool `json:"approveRequired,omitempty"`
}
MergeQuery defines conditions for a open PR to be merged
func (*MergeQuery) DeepCopy ¶ added in v0.3.0
func (in *MergeQuery) DeepCopy() *MergeQuery
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MergeQuery.
func (*MergeQuery) DeepCopyInto ¶ added in v0.3.0
func (in *MergeQuery) DeepCopyInto(out *MergeQuery)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NotiEmail ¶ added in v0.2.0
type NotiEmail 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. Default is false
IsHTML bool `json:"isHtml,omitempty"`
}
NotiEmail sends email to receivers
func (*NotiEmail) DeepCopy ¶ added in v0.2.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotiEmail.
func (*NotiEmail) DeepCopyInto ¶ added in v0.2.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NotiSlack ¶ added in v0.2.0
type NotiSlack struct {
// URL is a webhook url of a slack app. Refer to https://api.slack.com/messaging/webhooks
URL string `json:"url"`
// Message is a message sent to the webhook. It should be a Markdown format.
// You can use $INTEGRATION_JOB_NAME and $JOB_NAME variable for IntegrationJob's name and the job's name respectively.
Message string `json:"message"`
}
NotiSlack sends slack to the webhook
func (*NotiSlack) DeepCopy ¶ added in v0.2.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotiSlack.
func (*NotiSlack) DeepCopyInto ¶ added in v0.2.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NotiWebhook ¶ added in v0.5.4
type NotiWebhook struct {
// URL is a webhook url.
URL string `json:"url"`
// Body of the ReqeustBody
Body string `json:"body"`
}
NotiWebhook sends reqeust to the webhook
func (*NotiWebhook) DeepCopy ¶ added in v0.5.4
func (in *NotiWebhook) DeepCopy() *NotiWebhook
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotiWebhook.
func (*NotiWebhook) DeepCopyInto ¶ added in v0.5.4
func (in *NotiWebhook) DeepCopyInto(out *NotiWebhook)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Notification ¶ added in v0.2.0
type Notification struct {
// OnSuccess notifies when the job is succeeded
OnSuccess *NotificationMethods `json:"onSuccess,omitempty"`
// OnFailure notifies when the job is failed
OnFailure *NotificationMethods `json:"onFailure,omitempty"`
}
Notification specifies notification
func (*Notification) DeepCopy ¶ added in v0.2.0
func (in *Notification) DeepCopy() *Notification
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Notification.
func (*Notification) DeepCopyInto ¶ added in v0.2.0
func (in *Notification) DeepCopyInto(out *Notification)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NotificationMethods ¶ added in v0.2.0
type NotificationMethods struct {
// Email sends email
Email *NotiEmail `json:"email,omitempty"`
// Slack sends slack
Slack *NotiSlack `json:"slack,omitempty"`
// Webhook sends HTTP reqeust
Webhook *NotiWebhook `json:"webhook,omitempty"`
}
NotificationMethods specifies notification methods
func (*NotificationMethods) DeepCopy ¶ added in v0.2.0
func (in *NotificationMethods) DeepCopy() *NotificationMethods
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationMethods.
func (*NotificationMethods) DeepCopyInto ¶ added in v0.2.0
func (in *NotificationMethods) DeepCopyInto(out *NotificationMethods)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ParameterConfig ¶ added in v0.5.1
type ParameterConfig struct {
// ParamDefine is used to define parameter's spec
ParamDefine []ParameterDefine `json:"paramDefine,omitempty"`
// ParamValue can specify values of parameters
ParamValue []ParameterValue `json:"paramValue,omitempty"`
}
ParameterConfig for parameters
func (*ParameterConfig) DeepCopy ¶ added in v0.5.1
func (in *ParameterConfig) DeepCopy() *ParameterConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ParameterConfig.
func (*ParameterConfig) DeepCopyInto ¶ added in v0.5.1
func (in *ParameterConfig) DeepCopyInto(out *ParameterConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ParameterDefine ¶ added in v0.5.1
type ParameterDefine struct {
Name string `json:"name"`
DefaultStr string `json:"defaultStr,omitempty"`
DefaultArray []string `json:"defaultArray,omitempty"`
Description string `json:"description,omitempty"`
}
ParameterDefine defines a parameter's name, description & default values
func (*ParameterDefine) DeepCopy ¶ added in v0.5.1
func (in *ParameterDefine) DeepCopy() *ParameterDefine
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ParameterDefine.
func (*ParameterDefine) DeepCopyInto ¶ added in v0.5.1
func (in *ParameterDefine) DeepCopyInto(out *ParameterDefine)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ParameterValue ¶ added in v0.5.1
type ParameterValue struct {
Name string `json:"name"`
StringVal string `json:"stringVal,omitempty"`
ArrayVal []string `json:"arrayVal,omitempty"`
}
ParameterValue defines values of parameter
func (*ParameterValue) DeepCopy ¶ added in v0.5.1
func (in *ParameterValue) DeepCopy() *ParameterValue
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ParameterValue.
func (*ParameterValue) DeepCopyInto ¶ added in v0.5.1
func (in *ParameterValue) DeepCopyInto(out *ParameterValue)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Periodic ¶ added in v0.5.1
type Periodic struct {
Job `json:",inline"`
// Cron representation of job trigger time
Cron string `json:"cron,omitempty"`
}
Periodic runs on a time-basis, unrelated to git changes.
func (*Periodic) DeepCopy ¶ added in v0.5.1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Periodic.
func (*Periodic) DeepCopyInto ¶ added in v0.5.1
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Periodics ¶ added in v0.5.1
type Periodics []Periodic
Periodics is an array of PeriodicJob
func (Periodics) DeepCopy ¶ added in v0.5.1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Periodics.
func (Periodics) DeepCopyInto ¶ added in v0.5.1
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TLSConfig ¶ added in v0.5.2
type TLSConfig struct {
// InsecureSkipVerify is flag for accepting any certificate presented by the server and any host name in that certificate.
InsecureSkipVerify bool `json:"insecureSkipVerify,omitempty"`
}
TLSConfig is parameters for tls connection
func (*TLSConfig) DeepCopy ¶ added in v0.5.2
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSConfig.
func (*TLSConfig) DeepCopyInto ¶ added in v0.5.2
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 []ParameterValue `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.WorkspacePipelineTaskBinding `json:"workspaces,omitempty"`
}
TektonTask refers to an existing tekton task, rather than using job's script or command
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.