v1beta1

package
v0.40.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 16, 2022 License: Apache-2.0 Imports: 40 Imported by: 418

Documentation

Overview

Package v1beta1 contains API Schema definitions for the pipeline v1beta1 API group +k8s:openapi-gen=true +k8s:deepcopy-gen=package,register +k8s:conversion-gen=github.com/tektoncd/pipeline/pkg/apis/pipeline +k8s:defaulter-gen=TypeMeta +groupName=tekton.dev

Index

Constants

View Source
const (
	// CustomRunReasonCancelled must be used in the Condition Reason to indicate that a CustomRun was cancelled.
	CustomRunReasonCancelled = "CustomRunCancelled"
	// CustomRunReasonTimedOut must be used in the Condition Reason to indicate that a CustomRun was timed out.
	CustomRunReasonTimedOut = "CustomRunTimedOut"
	// CustomRunReasonWorkspaceNotSupported can be used in the Condition Reason to indicate that the
	// CustomRun contains a workspace which is not supported by this custom task.
	CustomRunReasonWorkspaceNotSupported = "CustomRunWorkspaceNotSupported"
)
View Source
const (
	// PipelineTasksAggregateStatus is a param representing aggregate status of all dag pipelineTasks
	PipelineTasksAggregateStatus = "tasks.status"
	// PipelineTasks is a value representing a task is a member of "tasks" section of the pipeline
	PipelineTasks = "tasks"
	// PipelineFinallyTasks is a value representing a task is a member of "finally" section of the pipeline
	PipelineFinallyTasks = "finally"
)
View Source
const (
	// PipelineRunSpecStatusCancelled indicates that the user wants to cancel the task,
	// if not already cancelled or terminated
	PipelineRunSpecStatusCancelled = "Cancelled"

	// PipelineRunSpecStatusCancelledRunFinally indicates that the user wants to cancel the pipeline run,
	// if not already cancelled or terminated, but ensure finally is run normally
	PipelineRunSpecStatusCancelledRunFinally = "CancelledRunFinally"

	// PipelineRunSpecStatusStoppedRunFinally indicates that the user wants to stop the pipeline run,
	// wait for already running tasks to be completed and run finally
	// if not already cancelled or terminated
	PipelineRunSpecStatusStoppedRunFinally = "StoppedRunFinally"

	// PipelineRunSpecStatusPending indicates that the user wants to postpone starting a PipelineRun
	// until some condition is met
	PipelineRunSpecStatusPending = "PipelineRunPending"
)
View Source
const (

	// ResultTaskPart Constant used to define the "tasks" part of a pipeline result reference
	ResultTaskPart = "tasks"
	// ResultFinallyPart Constant used to define the "finally" part of a pipeline result reference
	ResultFinallyPart = "finally"
	// ResultResultPart Constant used to define the "results" part of a pipeline result reference
	ResultResultPart = "results"

	// ResultNameFormat Constant used to define the the regex Result.Name should follow
	ResultNameFormat = `^([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9]$`
)
View Source
const (
	// TaskRunResultType default task run result value
	TaskRunResultType ResultType = 1
	// PipelineResourceResultType default pipeline result value
	PipelineResourceResultType = 2
	// InternalTektonResultType default internal tekton result value
	InternalTektonResultType = 3
	// UnknownResultType default unknown result type value
	UnknownResultType = 10
)
View Source
const (
	// ConditionTypeConvertible is a Warning condition that is set on
	// resources when they cannot be converted to warn of a forthcoming
	// breakage.
	ConditionTypeConvertible apis.ConditionType = "Convertible"
)
View Source
const ManagedByLabelKey = "app.kubernetes.io/managed-by"

ManagedByLabelKey is the label key used to mark what is managing this resource

View Source
const ParamsPrefix = "params"

ParamsPrefix is the prefix used in $(...) expressions referring to parameters

View Source
const (
	// TaskRunSpecStatusCancelled indicates that the user wants to cancel the task,
	// if not already cancelled or terminated
	TaskRunSpecStatusCancelled = "TaskRunCancelled"
)

Variables

View Source
var (

	// AddToScheme adds Build types to the scheme.
	AddToScheme = schemeBuilder.AddToScheme
)

AllParamTypes can be used for ParamType validation.

View Source
var AllResourceTypes = resource.AllResourceTypes

AllResourceTypes can be used for validation to check if a provided Resource type is one of the known types.

AllResultsTypes can be used for ResultsTypes validation.

View Source
var (
	// AllowedOutputResources are the resource types that can be used as outputs
	AllowedOutputResources = resource.AllowedOutputResources
)
View Source
var NewArrayOrString = NewStructuredValues

NewArrayOrString is the deprecated, this is to keep backward compatibility

View Source
var SchemeGroupVersion = schema.GroupVersion{Group: pipeline.GroupName, Version: "v1beta1"}

SchemeGroupVersion is group version used to register these objects

View Source
var VariableSubstitutionRegex = regexp.MustCompile(variableSubstitutionFormat)

VariableSubstitutionRegex is a regex to find all result matching substitutions

Functions

func ApplyTaskModifier

func ApplyTaskModifier(ts *TaskSpec, tm TaskModifier) error

ApplyTaskModifier applies a modifier to the task by appending and prepending steps and volumes. If steps with the same name exist in ts an error will be returned. If identical Volumes have been added, they will not be added again. If Volumes with the same name but different contents have been added, an error will be returned.

func ArrayReference added in v0.27.0

func ArrayReference(a string) string

ArrayReference returns the name of the parameter from array parameter reference returns arrayParam from $(params.arrayParam[*])

func GetOpenAPIDefinitions added in v0.18.0

func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition

func GetVarSubstitutionExpressionsForParam added in v0.11.3

func GetVarSubstitutionExpressionsForParam(param Param) ([]string, bool)

GetVarSubstitutionExpressionsForParam extracts all the value between "$(" and ")"" for a parameter

func GetVarSubstitutionExpressionsForPipelineResult added in v0.12.0

func GetVarSubstitutionExpressionsForPipelineResult(result PipelineResult) ([]string, bool)

GetVarSubstitutionExpressionsForPipelineResult extracts all the value between "$(" and ")"" for a pipeline result

func InputResourcePath added in v0.13.0

func InputResourcePath(r ResourceDeclaration) string

InputResourcePath returns the path where the given input resource will get mounted in a Pod

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns back a Group qualified GroupKind

func LooksLikeContainsResultRefs

func LooksLikeContainsResultRefs(expressions []string) bool

LooksLikeContainsResultRefs attempts to check if param or a pipeline result looks like it contains any result references. This is useful if we want to make sure the param looks like a ResultReference before performing strict validation

func OutputResourcePath added in v0.13.0

func OutputResourcePath(r ResourceDeclaration) string

OutputResourcePath returns the path to the output resource in a Pod

func ParseResultName added in v0.38.0

func ParseResultName(resultName string) (string, string)

ParseResultName parse the input string to extract resultName and result index. Array indexing: Input: anArrayResult[1] Output: anArrayResult, "1" Array star reference: Input: anArrayResult[*] Output: anArrayResult, "*"

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

func ResultsArrayReference added in v0.38.0

func ResultsArrayReference(a string) string

ResultsArrayReference returns the reference of the result. e.g. results.resultname from $(results.resultname[*])

func ValidateEmbeddedStatus added in v0.38.0

func ValidateEmbeddedStatus(ctx context.Context, featureName, wantEmbeddedStatus string) *apis.FieldError

ValidateEmbeddedStatus checks that the embedded-status feature gate is set to the wantEmbeddedStatus value and, if not, returns an error stating which feature is dependent on the status and what the current status actually is.

func ValidateParameterTypes

func ValidateParameterTypes(ctx context.Context, params []ParamSpec) (errs *apis.FieldError)

ValidateParameterTypes validates all the types within a slice of ParamSpecs

func ValidateParameterVariables

func ValidateParameterVariables(ctx context.Context, steps []Step, params []ParamSpec) *apis.FieldError

ValidateParameterVariables validates all variables within a slice of ParamSpecs against a slice of Steps

func ValidateParameters added in v0.38.0

func ValidateParameters(ctx context.Context, params []Param) (errs *apis.FieldError)

ValidateParameters makes sure the params for the Task are valid.

func ValidatePipelineParameterVariables added in v0.40.0

func ValidatePipelineParameterVariables(ctx context.Context, tasks []PipelineTask, params []ParamSpec) (errs *apis.FieldError)

ValidatePipelineParameterVariables validates parameters with those specified by each pipeline task, (1) it validates the type of parameter is either string or array (2) parameter default value matches with the type of that param (3) ensures that the referenced param variable is defined is part of the param declarations

func ValidatePipelineTasks added in v0.22.0

func ValidatePipelineTasks(ctx context.Context, tasks []PipelineTask, finalTasks []PipelineTask) *apis.FieldError

ValidatePipelineTasks ensures that pipeline tasks has unique label, pipeline tasks has specified one of taskRef or taskSpec, and in case of a pipeline task with taskRef, it has a reference to a valid task (task name)

func ValidateResourcesVariables

func ValidateResourcesVariables(ctx context.Context, steps []Step, resources *TaskResources) *apis.FieldError

ValidateResourcesVariables validates all variables within a TaskResources against a slice of Steps

func ValidateVolumes

func ValidateVolumes(volumes []corev1.Volume) (errs *apis.FieldError)

ValidateVolumes validates a slice of volumes to make sure there are no dupilcate names

func ValidateWorkspaceBindings added in v0.38.0

func ValidateWorkspaceBindings(ctx context.Context, wb []WorkspaceBinding) (errs *apis.FieldError)

ValidateWorkspaceBindings makes sure the volumes provided for the Task's declared workspaces make sense.

Types

type ArrayOrString

type ArrayOrString = ParamValue

ArrayOrString is deprecated, this is to keep backward compatibility

type ChildStatusReference added in v0.35.0

type ChildStatusReference struct {
	runtime.TypeMeta `json:",inline"`
	// Name is the name of the TaskRun or Run this is referencing.
	Name string `json:"name,omitempty"`
	// PipelineTaskName is the name of the PipelineTask this is referencing.
	PipelineTaskName string `json:"pipelineTaskName,omitempty"`

	// WhenExpressions is the list of checks guarding the execution of the PipelineTask
	// +optional
	// +listType=atomic
	WhenExpressions []WhenExpression `json:"whenExpressions,omitempty"`
}

ChildStatusReference is used to point to the statuses of individual TaskRuns and Runs within this PipelineRun.

func (*ChildStatusReference) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChildStatusReference.

func (*ChildStatusReference) DeepCopyInto added in v0.35.0

func (in *ChildStatusReference) DeepCopyInto(out *ChildStatusReference)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CloudEventCondition

type CloudEventCondition string

CloudEventCondition is a string that represents the condition of the event.

const (
	// CloudEventConditionUnknown means that the condition for the event to be
	// triggered was not met yet, or we don't know the state yet.
	CloudEventConditionUnknown CloudEventCondition = "Unknown"
	// CloudEventConditionSent means that the event was sent successfully
	CloudEventConditionSent CloudEventCondition = "Sent"
	// CloudEventConditionFailed means that there was one or more attempts to
	// send the event, and none was successful so far.
	CloudEventConditionFailed CloudEventCondition = "Failed"
)

type CloudEventDelivery

type CloudEventDelivery struct {
	// Target points to an addressable
	Target string                  `json:"target,omitempty"`
	Status CloudEventDeliveryState `json:"status,omitempty"`
}

CloudEventDelivery is the target of a cloud event along with the state of delivery.

func (*CloudEventDelivery) DeepCopy

func (in *CloudEventDelivery) DeepCopy() *CloudEventDelivery

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudEventDelivery.

func (*CloudEventDelivery) DeepCopyInto

func (in *CloudEventDelivery) DeepCopyInto(out *CloudEventDelivery)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CloudEventDeliveryState

type CloudEventDeliveryState struct {
	// Current status
	Condition CloudEventCondition `json:"condition,omitempty"`
	// SentAt is the time at which the last attempt to send the event was made
	// +optional
	SentAt *metav1.Time `json:"sentAt,omitempty"`
	// Error is the text of error (if any)
	Error string `json:"message"`
	// RetryCount is the number of attempts of sending the cloud event
	RetryCount int32 `json:"retryCount"`
}

CloudEventDeliveryState reports the state of a cloud event to be sent.

func (*CloudEventDeliveryState) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudEventDeliveryState.

func (*CloudEventDeliveryState) DeepCopyInto

func (in *CloudEventDeliveryState) DeepCopyInto(out *CloudEventDeliveryState)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClusterTask

type ClusterTask struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// Spec holds the desired state of the Task from the client
	// +optional
	Spec TaskSpec `json:"spec,omitempty"`
}

ClusterTask is a Task with a cluster scope. ClusterTasks are used to represent Tasks that should be publicly addressable from any namespace in the cluster.

func (*ClusterTask) ConvertFrom added in v0.12.0

func (ct *ClusterTask) ConvertFrom(ctx context.Context, source apis.Convertible) error

ConvertFrom implements apis.Convertible

func (*ClusterTask) ConvertTo added in v0.12.0

func (ct *ClusterTask) ConvertTo(ctx context.Context, sink apis.Convertible) error

ConvertTo implements apis.Convertible

func (*ClusterTask) Copy

func (t *ClusterTask) Copy() TaskObject

Copy returns a DeepCopy of the ClusterTask

func (*ClusterTask) DeepCopy

func (in *ClusterTask) DeepCopy() *ClusterTask

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterTask.

func (*ClusterTask) DeepCopyInto

func (in *ClusterTask) DeepCopyInto(out *ClusterTask)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ClusterTask) DeepCopyObject

func (in *ClusterTask) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ClusterTask) GetGroupVersionKind added in v0.29.0

func (*ClusterTask) GetGroupVersionKind() schema.GroupVersionKind

GetGroupVersionKind implements kmeta.OwnerRefable.

func (*ClusterTask) SetDefaults

func (t *ClusterTask) SetDefaults(ctx context.Context)

SetDefaults sets the default values for the ClusterTask's Spec.

func (*ClusterTask) TaskMetadata

func (t *ClusterTask) TaskMetadata() metav1.ObjectMeta

TaskMetadata returns the ObjectMeta for the ClusterTask

func (*ClusterTask) TaskSpec

func (t *ClusterTask) TaskSpec() TaskSpec

TaskSpec returns the ClusterTask's Spec

func (*ClusterTask) Validate

func (t *ClusterTask) Validate(ctx context.Context) *apis.FieldError

Validate performs validation of the metadata and spec of this ClusterTask.

type ClusterTaskList

type ClusterTaskList struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ClusterTask `json:"items"`
}

ClusterTaskList contains a list of ClusterTask

func (*ClusterTaskList) DeepCopy

func (in *ClusterTaskList) DeepCopy() *ClusterTaskList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterTaskList.

func (*ClusterTaskList) DeepCopyInto

func (in *ClusterTaskList) DeepCopyInto(out *ClusterTaskList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ClusterTaskList) DeepCopyObject

func (in *ClusterTaskList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type CustomRun added in v0.40.0

type CustomRun struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// +optional
	Spec CustomRunSpec `json:"spec,omitempty"`
	// +optional
	Status CustomRunStatus `json:"status,omitempty"`
}

CustomRun represents a single execution of a Custom Task.

+k8s:openapi-gen=true

func (*CustomRun) DeepCopy added in v0.40.0

func (in *CustomRun) DeepCopy() *CustomRun

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomRun.

func (*CustomRun) DeepCopyInto added in v0.40.0

func (in *CustomRun) DeepCopyInto(out *CustomRun)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*CustomRun) DeepCopyObject added in v0.40.0

func (in *CustomRun) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*CustomRun) GetConditionSet added in v0.40.0

func (r *CustomRun) GetConditionSet() apis.ConditionSet

GetConditionSet retrieves the condition set for this resource. Implements the KRShaped interface.

func (*CustomRun) GetCustomRunKey added in v0.40.0

func (r *CustomRun) GetCustomRunKey() string

GetCustomRunKey return the customrun's key for timeout handler map

func (*CustomRun) GetGroupVersionKind added in v0.40.0

func (*CustomRun) GetGroupVersionKind() schema.GroupVersionKind

GetGroupVersionKind implements kmeta.OwnerRefable.

func (*CustomRun) GetStatus added in v0.40.0

func (r *CustomRun) GetStatus() *duckv1.Status

GetStatus retrieves the status of the Parallel. Implements the KRShaped interface.

func (*CustomRun) GetStatusCondition added in v0.40.0

func (r *CustomRun) GetStatusCondition() apis.ConditionAccessor

GetStatusCondition returns the task run status as a ConditionAccessor

func (*CustomRun) GetTimeout added in v0.40.0

func (r *CustomRun) GetTimeout() time.Duration

GetTimeout returns the timeout for this customrun, or the default if not configured

func (*CustomRun) HasPipelineRunOwnerReference added in v0.40.0

func (r *CustomRun) HasPipelineRunOwnerReference() bool

HasPipelineRunOwnerReference returns true of CustomRun has owner reference of type PipelineRun

func (*CustomRun) HasStarted added in v0.40.0

func (r *CustomRun) HasStarted() bool

HasStarted function check whether taskrun has valid start time set in its status

func (*CustomRun) HasTimedOut added in v0.40.0

func (r *CustomRun) HasTimedOut(c clock.PassiveClock) bool

HasTimedOut returns true if the CustomRun's running time is beyond the allowed timeout

func (*CustomRun) IsCancelled added in v0.40.0

func (r *CustomRun) IsCancelled() bool

IsCancelled returns true if the CustomRun's spec status is set to Cancelled state

func (*CustomRun) IsDone added in v0.40.0

func (r *CustomRun) IsDone() bool

IsDone returns true if the CustomRun's status indicates that it is done.

func (*CustomRun) IsSuccessful added in v0.40.0

func (r *CustomRun) IsSuccessful() bool

IsSuccessful returns true if the CustomRun's status indicates that it is done.

func (*CustomRun) SetDefaults added in v0.40.0

func (r *CustomRun) SetDefaults(ctx context.Context)

SetDefaults implements apis.Defaultable

func (*CustomRun) Validate added in v0.40.0

func (r *CustomRun) Validate(ctx context.Context) *apis.FieldError

Validate customRun

type CustomRunList added in v0.40.0

type CustomRunList struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []CustomRun `json:"items"`
}

CustomRunList contains a list of CustomRun

func (*CustomRunList) DeepCopy added in v0.40.0

func (in *CustomRunList) DeepCopy() *CustomRunList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomRunList.

func (*CustomRunList) DeepCopyInto added in v0.40.0

func (in *CustomRunList) DeepCopyInto(out *CustomRunList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*CustomRunList) DeepCopyObject added in v0.40.0

func (in *CustomRunList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type CustomRunResult added in v0.40.0

type CustomRunResult = runv1beta1.CustomRunResult

CustomRunResult used to describe the results of a task

type CustomRunSpec added in v0.40.0

type CustomRunSpec struct {
	// +optional
	CustomRef *TaskRef `json:"customRef,omitempty"`

	// Spec is a specification of a custom task
	// +optional
	CustomSpec *EmbeddedCustomRunSpec `json:"customSpec,omitempty"`

	// +optional
	// +listType=atomic
	Params []Param `json:"params,omitempty"`

	// Used for cancelling a customrun (and maybe more later on)
	// +optional
	Status CustomRunSpecStatus `json:"status,omitempty"`

	// Status message for cancellation.
	// +optional
	StatusMessage CustomRunSpecStatusMessage `json:"statusMessage,omitempty"`

	// Used for propagating retries count to custom tasks
	// +optional
	Retries int `json:"retries,omitempty"`

	// +optional
	ServiceAccountName string `json:"serviceAccountName"`

	// Time after which the custom-task times out.
	// Refer Go's ParseDuration documentation for expected format: https://golang.org/pkg/time/#ParseDuration
	// +optional
	Timeout *metav1.Duration `json:"timeout,omitempty"`

	// Workspaces is a list of WorkspaceBindings from volumes to workspaces.
	// +optional
	// +listType=atomic
	Workspaces []WorkspaceBinding `json:"workspaces,omitempty"`
}

CustomRunSpec defines the desired state of CustomRun

func (*CustomRunSpec) DeepCopy added in v0.40.0

func (in *CustomRunSpec) DeepCopy() *CustomRunSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomRunSpec.

func (*CustomRunSpec) DeepCopyInto added in v0.40.0

func (in *CustomRunSpec) DeepCopyInto(out *CustomRunSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (CustomRunSpec) GetParam added in v0.40.0

func (rs CustomRunSpec) GetParam(name string) *Param

GetParam gets the Param from the CustomRunSpec with the given name TODO(jasonhall): Move this to a Params type so other code can use it?

func (*CustomRunSpec) SetDefaults added in v0.40.0

func (rs *CustomRunSpec) SetDefaults(ctx context.Context)

SetDefaults implements apis.Defaultable

func (*CustomRunSpec) Validate added in v0.40.0

func (rs *CustomRunSpec) Validate(ctx context.Context) *apis.FieldError

Validate CustomRun spec

type CustomRunSpecStatus added in v0.40.0

type CustomRunSpecStatus string

CustomRunSpecStatus defines the taskrun spec status the user can provide

const (
	// CustomRunSpecStatusCancelled indicates that the user wants to cancel the run,
	// if not already cancelled or terminated
	CustomRunSpecStatusCancelled CustomRunSpecStatus = "RunCancelled"
)

type CustomRunSpecStatusMessage added in v0.40.0

type CustomRunSpecStatusMessage string

CustomRunSpecStatusMessage defines human readable status messages for the TaskRun.

const (
	// CustomRunCancelledByPipelineMsg indicates that the PipelineRun of which part this CustomRun was
	// has been cancelled.
	CustomRunCancelledByPipelineMsg CustomRunSpecStatusMessage = "CustomRun cancelled as the PipelineRun it belongs to has been cancelled."
	// CustomRunCancelledByPipelineTimeoutMsg indicates that the Run was cancelled because the PipelineRun running it timed out.
	CustomRunCancelledByPipelineTimeoutMsg CustomRunSpecStatusMessage = "CustomRun cancelled as the PipelineRun it belongs to has timed out."
)

type CustomRunStatus added in v0.40.0

type CustomRunStatus = runv1beta1.CustomRunStatus

CustomRunStatus defines the observed state of CustomRun.

type CustomRunStatusFields added in v0.40.0

type CustomRunStatusFields = runv1beta1.CustomRunStatusFields

CustomRunStatusFields holds the fields of CustomRun's status. This is defined separately and inlined so that other types can readily consume these fields via duck typing.

type EmbeddedCustomRunSpec added in v0.40.0

type EmbeddedCustomRunSpec struct {
	runtime.TypeMeta `json:",inline"`

	// +optional
	Metadata PipelineTaskMetadata `json:"metadata,omitempty"`

	// Spec is a specification of a custom task
	// +optional
	Spec runtime.RawExtension `json:"spec,omitempty"`
}

EmbeddedCustomRunSpec allows custom task definitions to be embedded

func (*EmbeddedCustomRunSpec) DeepCopy added in v0.40.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmbeddedCustomRunSpec.

func (*EmbeddedCustomRunSpec) DeepCopyInto added in v0.40.0

func (in *EmbeddedCustomRunSpec) DeepCopyInto(out *EmbeddedCustomRunSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EmbeddedTask added in v0.16.0

type EmbeddedTask struct {
	// +optional
	runtime.TypeMeta `json:",inline,omitempty"`

	// Spec is a specification of a custom task
	// +optional
	Spec runtime.RawExtension `json:"spec,omitempty"`

	// +optional
	Metadata PipelineTaskMetadata `json:"metadata,omitempty"`

	// TaskSpec is a specification of a task
	// +optional
	TaskSpec `json:",inline,omitempty"`
}

EmbeddedTask is used to define a Task inline within a Pipeline's PipelineTasks.

func (*EmbeddedTask) DeepCopy added in v0.16.0

func (in *EmbeddedTask) DeepCopy() *EmbeddedTask

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmbeddedTask.

func (*EmbeddedTask) DeepCopyInto added in v0.16.0

func (in *EmbeddedTask) DeepCopyInto(out *EmbeddedTask)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InternalTaskModifier

type InternalTaskModifier struct {
	// +listType=atomic
	StepsToPrepend []Step `json:"stepsToPrepend"`
	// +listType=atomic
	StepsToAppend []Step `json:"stepsToAppend"`
	// +listType=atomic
	Volumes []v1.Volume `json:"volumes"`
}

InternalTaskModifier implements TaskModifier for resources that are built-in to Tekton Pipelines.

func (*InternalTaskModifier) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InternalTaskModifier.

func (*InternalTaskModifier) DeepCopyInto

func (in *InternalTaskModifier) DeepCopyInto(out *InternalTaskModifier)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*InternalTaskModifier) GetStepsToAppend

func (tm *InternalTaskModifier) GetStepsToAppend() []Step

GetStepsToAppend returns a set of Steps to append to the Task.

func (*InternalTaskModifier) GetStepsToPrepend

func (tm *InternalTaskModifier) GetStepsToPrepend() []Step

GetStepsToPrepend returns a set of Steps to prepend to the Task.

func (*InternalTaskModifier) GetVolumes

func (tm *InternalTaskModifier) GetVolumes() []v1.Volume

GetVolumes returns a set of Volumes to prepend to the Task pod.

type Matrix added in v0.40.0

type Matrix struct {
	// Params is a list of parameters used to fan out the pipelineTask
	// Params takes only `Parameters` of type `"array"`
	// Each array element is supplied to the `PipelineTask` by substituting `params` of type `"string"` in the underlying `Task`.
	// The names of the `params` in the `Matrix` must match the names of the `params` in the underlying `Task` that they will be substituting.
	// +listType=atomic
	Params []Param `json:"params,omitempty"`
}

Matrix is used to fan out Tasks in a Pipeline

func (*Matrix) DeepCopy added in v0.40.0

func (in *Matrix) DeepCopy() *Matrix

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Matrix.

func (*Matrix) DeepCopyInto added in v0.40.0

func (in *Matrix) DeepCopyInto(out *Matrix)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OnErrorType added in v0.39.0

type OnErrorType string

OnErrorType defines a list of supported exiting behavior of a container on error

const (
	// StopAndFail indicates exit the taskRun if the container exits with non-zero exit code
	StopAndFail OnErrorType = "stopAndFail"
	// Continue indicates continue executing the rest of the steps irrespective of the container exit code
	Continue OnErrorType = "continue"
)

type Param

type Param struct {
	Name  string     `json:"name"`
	Value ParamValue `json:"value"`
}

Param declares an ParamValues to use for the parameter called name.

func (*Param) DeepCopy

func (in *Param) DeepCopy() *Param

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Param.

func (*Param) DeepCopyInto

func (in *Param) DeepCopyInto(out *Param)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ParamSpec

type ParamSpec struct {
	// Name declares the name by which a parameter is referenced.
	Name string `json:"name"`
	// Type is the user-specified type of the parameter. The possible types
	// are currently "string", "array" and "object", and "string" is the default.
	// +optional
	Type ParamType `json:"type,omitempty"`
	// Description is a user-facing description of the parameter that may be
	// used to populate a UI.
	// +optional
	Description string `json:"description,omitempty"`
	// Properties is the JSON Schema properties to support key-value pairs parameter.
	// +optional
	Properties map[string]PropertySpec `json:"properties,omitempty"`
	// Default is the value a parameter takes if no input value is supplied. If
	// default is set, a Task may be executed without a supplied value for the
	// parameter.
	// +optional
	Default *ParamValue `json:"default,omitempty"`
}

ParamSpec defines arbitrary parameters needed beyond typed inputs (such as resources). Parameter values are provided by users as inputs on a TaskRun or PipelineRun.

func (*ParamSpec) DeepCopy

func (in *ParamSpec) DeepCopy() *ParamSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ParamSpec.

func (*ParamSpec) DeepCopyInto

func (in *ParamSpec) DeepCopyInto(out *ParamSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ParamSpec) SetDefaults

func (pp *ParamSpec) SetDefaults(context.Context)

SetDefaults set the default type

func (ParamSpec) ValidateObjectType added in v0.36.0

func (p ParamSpec) ValidateObjectType(ctx context.Context) *apis.FieldError

ValidateObjectType checks that object type parameter does not miss the definition of `properties` section and the type of a PropertySpec is allowed. (Currently, only string is allowed)

func (ParamSpec) ValidateType added in v0.17.0

func (p ParamSpec) ValidateType(ctx context.Context) *apis.FieldError

ValidateType checks that the type of a ParamSpec is allowed and its default value matches that type

type ParamType

type ParamType string

ParamType indicates the type of an input parameter; Used to distinguish between a single string and an array of strings.

const (
	ParamTypeString ParamType = "string"
	ParamTypeArray  ParamType = "array"
	ParamTypeObject ParamType = "object"
)

Valid ParamTypes:

type ParamValue added in v0.39.0

type ParamValue struct {
	Type      ParamType `json:"type"` // Represents the stored type of ParamValues.
	StringVal string    `json:"stringVal"`
	// +listType=atomic
	ArrayVal  []string          `json:"arrayVal"`
	ObjectVal map[string]string `json:"objectVal"`
}

ParamValue is a type that can hold a single string or string array. Used in JSON unmarshalling so that a single JSON field can accept either an individual string or an array of strings.

func NewObject added in v0.36.0

func NewObject(pairs map[string]string) *ParamValue

NewObject creates an ParamValues of type ParamTypeObject using the provided key-value pairs

func NewStructuredValues added in v0.39.0

func NewStructuredValues(value string, values ...string) *ParamValue

NewStructuredValues creates an ParamValues of type ParamTypeString or ParamTypeArray, based on how many inputs are given (>1 input will create an array, not string).

func (*ParamValue) ApplyReplacements added in v0.39.0

func (paramValues *ParamValue) ApplyReplacements(stringReplacements map[string]string, arrayReplacements map[string][]string, objectReplacements map[string]map[string]string)

ApplyReplacements applyes replacements for ParamValues type

func (*ParamValue) DeepCopy added in v0.39.0

func (in *ParamValue) DeepCopy() *ParamValue

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ParamValue.

func (*ParamValue) DeepCopyInto added in v0.39.0

func (in *ParamValue) DeepCopyInto(out *ParamValue)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (ParamValue) MarshalJSON added in v0.39.0

func (paramValues ParamValue) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface.

func (*ParamValue) UnmarshalJSON added in v0.39.0

func (paramValues *ParamValue) UnmarshalJSON(value []byte) error

UnmarshalJSON implements the json.Unmarshaller interface.

type Pipeline

type Pipeline struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// Spec holds the desired state of the Pipeline from the client
	// +optional
	Spec PipelineSpec `json:"spec"`
}

Pipeline describes a list of Tasks to execute. It expresses how outputs of tasks feed into inputs of subsequent tasks. +k8s:openapi-gen=true

func (*Pipeline) ConvertFrom added in v0.12.0

func (p *Pipeline) ConvertFrom(ctx context.Context, from apis.Convertible) error

ConvertFrom implements apis.Convertible

func (*Pipeline) ConvertTo added in v0.12.0

func (p *Pipeline) ConvertTo(ctx context.Context, to apis.Convertible) error

ConvertTo implements apis.Convertible

func (*Pipeline) Copy

func (p *Pipeline) Copy() PipelineObject

Copy returns a deep copy of the Pipeline, implementing PipelineObject

func (*Pipeline) DeepCopy

func (in *Pipeline) DeepCopy() *Pipeline

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Pipeline.

func (*Pipeline) DeepCopyInto

func (in *Pipeline) DeepCopyInto(out *Pipeline)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Pipeline) DeepCopyObject

func (in *Pipeline) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Pipeline) GetGroupVersionKind added in v0.29.0

func (*Pipeline) GetGroupVersionKind() schema.GroupVersionKind

GetGroupVersionKind implements kmeta.OwnerRefable.

func (*Pipeline) PipelineMetadata

func (p *Pipeline) PipelineMetadata() metav1.ObjectMeta

PipelineMetadata returns the Pipeline's ObjectMeta, implementing PipelineObject

func (*Pipeline) PipelineSpec

func (p *Pipeline) PipelineSpec() PipelineSpec

PipelineSpec returns the Pipeline's Spec, implementing PipelineObject

func (*Pipeline) SetDefaults

func (p *Pipeline) SetDefaults(ctx context.Context)

SetDefaults sets default values on the Pipeline's Spec

func (*Pipeline) Validate

func (p *Pipeline) Validate(ctx context.Context) *apis.FieldError

Validate checks that the Pipeline structure is valid but does not validate that any references resources exist, that is done at run time.

type PipelineDeclaredResource

type PipelineDeclaredResource struct {
	// Name is the name that will be used by the Pipeline to refer to this resource.
	// It does not directly correspond to the name of any PipelineResources Task
	// inputs or outputs, and it does not correspond to the actual names of the
	// PipelineResources that will be bound in the PipelineRun.
	Name string `json:"name"`
	// Type is the type of the PipelineResource.
	Type PipelineResourceType `json:"type"`
	// Optional declares the resource as optional.
	// optional: true - the resource is considered optional
	// optional: false - the resource is considered required (default/equivalent of not specifying it)
	Optional bool `json:"optional,omitempty"`
}

PipelineDeclaredResource is used by a Pipeline to declare the types of the PipelineResources that it will required to run and names which can be used to refer to these PipelineResources in PipelineTaskResourceBindings.

func (*PipelineDeclaredResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineDeclaredResource.

func (*PipelineDeclaredResource) DeepCopyInto

func (in *PipelineDeclaredResource) DeepCopyInto(out *PipelineDeclaredResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PipelineList

type PipelineList struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Pipeline `json:"items"`
}

PipelineList contains a list of Pipeline

func (*PipelineList) DeepCopy

func (in *PipelineList) DeepCopy() *PipelineList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineList.

func (*PipelineList) DeepCopyInto

func (in *PipelineList) DeepCopyInto(out *PipelineList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PipelineList) DeepCopyObject

func (in *PipelineList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type PipelineObject added in v0.19.0

type PipelineObject interface {
	apis.Defaultable
	PipelineMetadata() metav1.ObjectMeta
	PipelineSpec() PipelineSpec
	Copy() PipelineObject
}

PipelineObject is implemented by Pipeline and ClusterPipeline

type PipelineRef

type PipelineRef struct {
	// Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names
	Name string `json:"name,omitempty"`
	// API version of the referent
	// +optional
	APIVersion string `json:"apiVersion,omitempty"`
	// Bundle url reference to a Tekton Bundle.
	// +optional
	Bundle string `json:"bundle,omitempty"`

	// ResolverRef allows referencing a Pipeline in a remote location
	// like a git repo. This field is only supported when the alpha
	// feature gate is enabled.
	// +optional
	ResolverRef `json:",omitempty"`
}

PipelineRef can be used to refer to a specific instance of a Pipeline.

func (*PipelineRef) DeepCopy

func (in *PipelineRef) DeepCopy() *PipelineRef

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineRef.

func (*PipelineRef) DeepCopyInto

func (in *PipelineRef) DeepCopyInto(out *PipelineRef)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PipelineRef) Validate added in v0.33.0

func (ref *PipelineRef) Validate(ctx context.Context) (errs *apis.FieldError)

Validate ensures that a supplied PipelineRef field is populated correctly. No errors are returned for a nil PipelineRef.

type PipelineResourceBinding

type PipelineResourceBinding struct {
	// Name is the name of the PipelineResource in the Pipeline's declaration
	Name string `json:"name,omitempty"`
	// ResourceRef is a reference to the instance of the actual PipelineResource
	// that should be used
	// +optional
	ResourceRef *PipelineResourceRef `json:"resourceRef,omitempty"`

	// ResourceSpec is specification of a resource that should be created and
	// consumed by the task
	// +optional
	ResourceSpec *resource.PipelineResourceSpec `json:"resourceSpec,omitempty"`
}

PipelineResourceBinding connects a reference to an instance of a PipelineResource with a PipelineResource dependency that the Pipeline has declared

func (*PipelineResourceBinding) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineResourceBinding.

func (*PipelineResourceBinding) DeepCopyInto

func (in *PipelineResourceBinding) DeepCopyInto(out *PipelineResourceBinding)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PipelineResourceInterface added in v0.13.0

type PipelineResourceInterface interface {
	// GetName returns the name of this PipelineResource instance.
	GetName() string
	// GetType returns the type of this PipelineResource (often a super type, e.g. in the case of storage).
	GetType() PipelineResourceType
	// Replacements returns all the attributes that this PipelineResource has that
	// can be used for variable replacement.
	Replacements() map[string]string
	// GetOutputTaskModifier returns the TaskModifier instance that should be used on a Task
	// in order to add this kind of resource when it is being used as an output.
	GetOutputTaskModifier(ts *TaskSpec, path string) (TaskModifier, error)
	// GetInputTaskModifier returns the TaskModifier instance that should be used on a Task
	// in order to add this kind of resource when it is being used as an input.
	GetInputTaskModifier(ts *TaskSpec, path string) (TaskModifier, error)
}

PipelineResourceInterface interface to be implemented by different PipelineResource types

type PipelineResourceRef

type PipelineResourceRef struct {
	// Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names
	Name string `json:"name,omitempty"`
	// API version of the referent
	// +optional
	APIVersion string `json:"apiVersion,omitempty"`
}

PipelineResourceRef can be used to refer to a specific instance of a Resource

func (*PipelineResourceRef) DeepCopy

func (in *PipelineResourceRef) DeepCopy() *PipelineResourceRef

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineResourceRef.

func (*PipelineResourceRef) DeepCopyInto

func (in *PipelineResourceRef) DeepCopyInto(out *PipelineResourceRef)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PipelineResourceResult

type PipelineResourceResult struct {
	Key          string     `json:"key"`
	Value        string     `json:"value"`
	ResourceName string     `json:"resourceName,omitempty"`
	ResultType   ResultType `json:"type,omitempty"`
}

PipelineResourceResult used to export the image name and digest as json

func (*PipelineResourceResult) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineResourceResult.

func (*PipelineResourceResult) DeepCopyInto

func (in *PipelineResourceResult) DeepCopyInto(out *PipelineResourceResult)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PipelineResourceType

type PipelineResourceType = resource.PipelineResourceType

PipelineResourceType represents the type of endpoint the pipelineResource is, so that the controller will know this pipelineResource should be fetched and optionally what additional metatdata should be provided for it.

const (
	// PipelineResourceTypeGit indicates that this source is a GitHub repo.
	PipelineResourceTypeGit PipelineResourceType = resource.PipelineResourceTypeGit

	// PipelineResourceTypeStorage indicates that this source is a storage blob resource.
	PipelineResourceTypeStorage PipelineResourceType = resource.PipelineResourceTypeStorage

	// PipelineResourceTypeImage indicates that this source is a docker Image.
	PipelineResourceTypeImage PipelineResourceType = resource.PipelineResourceTypeImage

	// PipelineResourceTypeCluster indicates that this source is a k8s cluster Image.
	PipelineResourceTypeCluster PipelineResourceType = resource.PipelineResourceTypeCluster

	// PipelineResourceTypePullRequest indicates that this source is a SCM Pull Request.
	PipelineResourceTypePullRequest PipelineResourceType = resource.PipelineResourceTypePullRequest

	// PipelineResourceTypeCloudEvent indicates that this source is a cloud event URI
	PipelineResourceTypeCloudEvent PipelineResourceType = resource.PipelineResourceTypeCloudEvent
)

type PipelineResult added in v0.12.0

type PipelineResult struct {
	// Name the given name
	Name string `json:"name"`

	// Type is the user-specified type of the result.
	// The possible types are 'string', 'array', and 'object', with 'string' as the default.
	// 'array' and 'object' types are alpha features.
	Type ResultsType `json:"type,omitempty"`

	// Description is a human-readable description of the result
	// +optional
	Description string `json:"description"`

	// Value the expression used to retrieve the value
	Value ResultValue `json:"value"`
}

PipelineResult used to describe the results of a pipeline

func (*PipelineResult) DeepCopy added in v0.12.0

func (in *PipelineResult) DeepCopy() *PipelineResult

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineResult.

func (*PipelineResult) DeepCopyInto added in v0.12.0

func (in *PipelineResult) DeepCopyInto(out *PipelineResult)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PipelineRun

type PipelineRun struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// +optional
	Spec PipelineRunSpec `json:"spec,omitempty"`
	// +optional
	Status PipelineRunStatus `json:"status,omitempty"`
}

PipelineRun represents a single execution of a Pipeline. PipelineRuns are how the graph of Tasks declared in a Pipeline are executed; they specify inputs to Pipelines such as parameter values and capture operational aspects of the Tasks execution such as service account and tolerations. Creating a PipelineRun creates TaskRuns for Tasks in the referenced Pipeline.

+k8s:openapi-gen=true

func (*PipelineRun) ConvertFrom added in v0.12.0

func (pr *PipelineRun) ConvertFrom(ctx context.Context, from apis.Convertible) error

ConvertFrom implements apis.Convertible

func (*PipelineRun) ConvertTo added in v0.12.0

func (pr *PipelineRun) ConvertTo(ctx context.Context, to apis.Convertible) error

ConvertTo implements apis.Convertible

func (*PipelineRun) DeepCopy

func (in *PipelineRun) DeepCopy() *PipelineRun

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineRun.

func (*PipelineRun) DeepCopyInto

func (in *PipelineRun) DeepCopyInto(out *PipelineRun)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PipelineRun) DeepCopyObject

func (in *PipelineRun) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*PipelineRun) FinallyTimeout added in v0.32.0

func (pr *PipelineRun) FinallyTimeout() *metav1.Duration

FinallyTimeout returns the the finally timeout for the PipelineRun, if set, or the finally timeout computed from the Pipeline and Tasks timeouts, if those are set.

func (*PipelineRun) GetGroupVersionKind added in v0.27.0

func (*PipelineRun) GetGroupVersionKind() schema.GroupVersionKind

GetGroupVersionKind implements kmeta.OwnerRefable.

func (*PipelineRun) GetName

func (pr *PipelineRun) GetName() string

GetName Returns the name of the PipelineRun

func (*PipelineRun) GetNamespacedName added in v0.16.0

func (pr *PipelineRun) GetNamespacedName() types.NamespacedName

GetNamespacedName returns a k8s namespaced name that identifies this PipelineRun

func (*PipelineRun) GetStatusCondition added in v0.14.0

func (pr *PipelineRun) GetStatusCondition() apis.ConditionAccessor

GetStatusCondition returns the task run status as a ConditionAccessor

func (*PipelineRun) GetTaskRunSpec added in v0.19.0

func (pr *PipelineRun) GetTaskRunSpec(pipelineTaskName string) PipelineTaskRunSpec

GetTaskRunSpec returns the task specific spec for a given PipelineTask if configured, otherwise it returns the PipelineRun's default.

func (*PipelineRun) HasFinallyTimedOut added in v0.40.0

func (pr *PipelineRun) HasFinallyTimedOut(ctx context.Context, c clock.PassiveClock) bool

HasFinallyTimedOut returns true if a pipelinerun has exceeded its spec.Timeouts.Finally, based on status.FinallyStartTime

func (*PipelineRun) HasStarted

func (pr *PipelineRun) HasStarted() bool

HasStarted function check whether pipelinerun has valid start time set in its status

func (*PipelineRun) HasTimedOut added in v0.14.0

func (pr *PipelineRun) HasTimedOut(ctx context.Context, c clock.PassiveClock) bool

HasTimedOut returns true if a pipelinerun has exceeded its spec.Timeout based on its status.Timeout

func (*PipelineRun) HasVolumeClaimTemplate added in v0.12.0

func (pr *PipelineRun) HasVolumeClaimTemplate() bool

HasVolumeClaimTemplate returns true if PipelineRun contains volumeClaimTemplates that is used for creating PersistentVolumeClaims with an OwnerReference for each run

func (*PipelineRun) HaveTasksTimedOut added in v0.40.0

func (pr *PipelineRun) HaveTasksTimedOut(ctx context.Context, c clock.PassiveClock) bool

HaveTasksTimedOut returns true if a pipelinerun has exceeded its spec.Timeouts.Tasks

func (*PipelineRun) IsCancelled

func (pr *PipelineRun) IsCancelled() bool

IsCancelled returns true if the PipelineRun's spec status is set to Cancelled state

func (*PipelineRun) IsDone

func (pr *PipelineRun) IsDone() bool

IsDone returns true if the PipelineRun's status indicates that it is done.

func (*PipelineRun) IsGracefullyCancelled added in v0.25.0

func (pr *PipelineRun) IsGracefullyCancelled() bool

IsGracefullyCancelled returns true if the PipelineRun's spec status is set to CancelledRunFinally state

func (*PipelineRun) IsGracefullyStopped added in v0.25.0

func (pr *PipelineRun) IsGracefullyStopped() bool

IsGracefullyStopped returns true if the PipelineRun's spec status is set to StoppedRunFinally state

func (*PipelineRun) IsPending added in v0.21.0

func (pr *PipelineRun) IsPending() bool

IsPending returns true if the PipelineRun's spec status is set to Pending state

func (*PipelineRun) PipelineTimeout added in v0.32.0

func (pr *PipelineRun) PipelineTimeout(ctx context.Context) time.Duration

PipelineTimeout returns the the applicable timeout for the PipelineRun

func (*PipelineRun) SetDefaults

func (pr *PipelineRun) SetDefaults(ctx context.Context)

SetDefaults implements apis.Defaultable

func (*PipelineRun) TasksTimeout added in v0.32.0

func (pr *PipelineRun) TasksTimeout() *metav1.Duration

TasksTimeout returns the the tasks timeout for the PipelineRun, if set, or the tasks timeout computed from the Pipeline and Finally timeouts, if those are set.

func (*PipelineRun) Validate

func (pr *PipelineRun) Validate(ctx context.Context) *apis.FieldError

Validate pipelinerun

type PipelineRunList

type PipelineRunList struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []PipelineRun `json:"items,omitempty"`
}

PipelineRunList contains a list of PipelineRun

func (*PipelineRunList) DeepCopy

func (in *PipelineRunList) DeepCopy() *PipelineRunList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineRunList.

func (*PipelineRunList) DeepCopyInto

func (in *PipelineRunList) DeepCopyInto(out *PipelineRunList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PipelineRunList) DeepCopyObject

func (in *PipelineRunList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type PipelineRunReason added in v0.14.0

type PipelineRunReason string

PipelineRunReason represents a reason for the pipeline run "Succeeded" condition

const (
	// PipelineRunReasonStarted is the reason set when the PipelineRun has just started
	PipelineRunReasonStarted PipelineRunReason = "Started"
	// PipelineRunReasonRunning is the reason set when the PipelineRun is running
	PipelineRunReasonRunning PipelineRunReason = "Running"
	// PipelineRunReasonSuccessful is the reason set when the PipelineRun completed successfully
	PipelineRunReasonSuccessful PipelineRunReason = "Succeeded"
	// PipelineRunReasonCompleted is the reason set when the PipelineRun completed successfully with one or more skipped Tasks
	PipelineRunReasonCompleted PipelineRunReason = "Completed"
	// PipelineRunReasonFailed is the reason set when the PipelineRun completed with a failure
	PipelineRunReasonFailed PipelineRunReason = "Failed"
	// PipelineRunReasonCancelled is the reason set when the PipelineRun cancelled by the user
	// This reason may be found with a corev1.ConditionFalse status, if the cancellation was processed successfully
	// This reason may be found with a corev1.ConditionUnknown status, if the cancellation is being processed or failed
	PipelineRunReasonCancelled PipelineRunReason = "Cancelled"
	// PipelineRunReasonPending is the reason set when the PipelineRun is in the pending state
	PipelineRunReasonPending PipelineRunReason = "PipelineRunPending"
	// PipelineRunReasonTimedOut is the reason set when the PipelineRun has timed out
	PipelineRunReasonTimedOut PipelineRunReason = "PipelineRunTimeout"
	// PipelineRunReasonStopping indicates that no new Tasks will be scheduled by the controller, and the
	// pipeline will stop once all running tasks complete their work
	PipelineRunReasonStopping PipelineRunReason = "PipelineRunStopping"
	// PipelineRunReasonCancelledRunningFinally indicates that pipeline has been gracefully cancelled
	// and no new Tasks will be scheduled by the controller, but final tasks are now running
	PipelineRunReasonCancelledRunningFinally PipelineRunReason = "CancelledRunningFinally"
	// PipelineRunReasonStoppedRunningFinally indicates that pipeline has been gracefully stopped
	// and no new Tasks will be scheduled by the controller, but final tasks are now running
	PipelineRunReasonStoppedRunningFinally PipelineRunReason = "StoppedRunningFinally"
)

func (PipelineRunReason) String added in v0.14.0

func (t PipelineRunReason) String() string

type PipelineRunResult added in v0.12.0

type PipelineRunResult struct {
	// Name is the result's name as declared by the Pipeline
	Name string `json:"name"`

	// Value is the result returned from the execution of this PipelineRun
	Value ResultValue `json:"value"`
}

PipelineRunResult used to describe the results of a pipeline

func (*PipelineRunResult) DeepCopy added in v0.12.0

func (in *PipelineRunResult) DeepCopy() *PipelineRunResult

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineRunResult.

func (*PipelineRunResult) DeepCopyInto added in v0.12.0

func (in *PipelineRunResult) DeepCopyInto(out *PipelineRunResult)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PipelineRunRunStatus added in v0.19.0

type PipelineRunRunStatus struct {
	// PipelineTaskName is the name of the PipelineTask.
	PipelineTaskName string `json:"pipelineTaskName,omitempty"`
	// Status is the RunStatus for the corresponding Run
	// +optional
	Status *runv1alpha1.RunStatus `json:"status,omitempty"`
	// WhenExpressions is the list of checks guarding the execution of the PipelineTask
	// +optional
	// +listType=atomic
	WhenExpressions []WhenExpression `json:"whenExpressions,omitempty"`
}

PipelineRunRunStatus contains the name of the PipelineTask for this Run and the Run's Status

func (*PipelineRunRunStatus) DeepCopy added in v0.19.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineRunRunStatus.

func (*PipelineRunRunStatus) DeepCopyInto added in v0.19.0

func (in *PipelineRunRunStatus) DeepCopyInto(out *PipelineRunRunStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PipelineRunSpec

type PipelineRunSpec struct {
	// +optional
	PipelineRef *PipelineRef `json:"pipelineRef,omitempty"`
	// +optional
	PipelineSpec *PipelineSpec `json:"pipelineSpec,omitempty"`
	// Resources is a list of bindings specifying which actual instances of
	// PipelineResources to use for the resources the Pipeline has declared
	// it needs.
	// +listType=atomic
	Resources []PipelineResourceBinding `json:"resources,omitempty"`
	// Params is a list of parameter names and values.
	// +listType=atomic
	Params []Param `json:"params,omitempty"`
	// +optional
	ServiceAccountName string `json:"serviceAccountName,omitempty"`

	// Used for cancelling a pipelinerun (and maybe more later on)
	// +optional
	Status PipelineRunSpecStatus `json:"status,omitempty"`
	// Time after which the Pipeline times out.
	// Currently three keys are accepted in the map
	// pipeline, tasks and finally
	// with Timeouts.pipeline >= Timeouts.tasks + Timeouts.finally
	// +optional
	Timeouts *TimeoutFields `json:"timeouts,omitempty"`

	// Timeout Deprecated: use pipelineRunSpec.Timeouts.Pipeline instead
	// Time after which the Pipeline times out. Defaults to never.
	// Refer to Go's ParseDuration documentation for expected format: https://golang.org/pkg/time/#ParseDuration
	// +optional
	Timeout *metav1.Duration `json:"timeout,omitempty"`
	// PodTemplate holds pod specific configuration
	PodTemplate *pod.PodTemplate `json:"podTemplate,omitempty"`
	// Workspaces holds a set of workspace bindings that must match names
	// with those declared in the pipeline.
	// +optional
	// +listType=atomic
	Workspaces []WorkspaceBinding `json:"workspaces,omitempty"`
	// TaskRunSpecs holds a set of runtime specs
	// +optional
	// +listType=atomic
	TaskRunSpecs []PipelineTaskRunSpec `json:"taskRunSpecs,omitempty"`
}

PipelineRunSpec defines the desired state of PipelineRun

func (*PipelineRunSpec) ConvertFrom added in v0.40.0

func (prs *PipelineRunSpec) ConvertFrom(ctx context.Context, source *v1.PipelineRunSpec) error

ConvertFrom implements apis.Convertible

func (PipelineRunSpec) ConvertTo added in v0.40.0

func (prs PipelineRunSpec) ConvertTo(ctx context.Context, sink *v1.PipelineRunSpec) error

ConvertTo implements apis.Convertible

func (*PipelineRunSpec) DeepCopy

func (in *PipelineRunSpec) DeepCopy() *PipelineRunSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineRunSpec.

func (*PipelineRunSpec) DeepCopyInto

func (in *PipelineRunSpec) DeepCopyInto(out *PipelineRunSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PipelineRunSpec) SetDefaults

func (prs *PipelineRunSpec) SetDefaults(ctx context.Context)

SetDefaults implements apis.Defaultable

func (*PipelineRunSpec) Validate

func (ps *PipelineRunSpec) Validate(ctx context.Context) (errs *apis.FieldError)

Validate pipelinerun spec

type PipelineRunSpecStatus

type PipelineRunSpecStatus string

PipelineRunSpecStatus defines the pipelinerun spec status the user can provide

type PipelineRunStatus

type PipelineRunStatus struct {
	duckv1beta1.Status `json:",inline"`

	// PipelineRunStatusFields inlines the status fields.
	PipelineRunStatusFields `json:",inline"`
}

PipelineRunStatus defines the observed state of PipelineRun

func (*PipelineRunStatus) DeepCopy

func (in *PipelineRunStatus) DeepCopy() *PipelineRunStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineRunStatus.

func (*PipelineRunStatus) DeepCopyInto

func (in *PipelineRunStatus) DeepCopyInto(out *PipelineRunStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PipelineRunStatus) GetCondition

func (pr *PipelineRunStatus) GetCondition(t apis.ConditionType) *apis.Condition

GetCondition returns the Condition matching the given type.

func (*PipelineRunStatus) InitializeConditions

func (pr *PipelineRunStatus) InitializeConditions(c clock.PassiveClock)

InitializeConditions will set all conditions in pipelineRunCondSet to unknown for the PipelineRun and set the started time to the current time

func (*PipelineRunStatus) MarkFailed added in v0.13.0

func (pr *PipelineRunStatus) MarkFailed(reason, messageFormat string, messageA ...interface{})

MarkFailed changes the Succeeded condition to False with the provided reason and message.

func (*PipelineRunStatus) MarkRunning added in v0.13.0

func (pr *PipelineRunStatus) MarkRunning(reason, messageFormat string, messageA ...interface{})

MarkRunning changes the Succeeded condition to Unknown with the provided reason and message.

func (*PipelineRunStatus) MarkSucceeded added in v0.13.0

func (pr *PipelineRunStatus) MarkSucceeded(reason, messageFormat string, messageA ...interface{})

MarkSucceeded changes the Succeeded condition to True with the provided reason and message.

func (*PipelineRunStatus) SetCondition

func (pr *PipelineRunStatus) SetCondition(newCond *apis.Condition)

SetCondition sets the condition, unsetting previous conditions with the same type as necessary.

type PipelineRunStatusFields

type PipelineRunStatusFields struct {
	// StartTime is the time the PipelineRun is actually started.
	// +optional
	StartTime *metav1.Time `json:"startTime,omitempty"`

	// CompletionTime is the time the PipelineRun completed.
	// +optional
	CompletionTime *metav1.Time `json:"completionTime,omitempty"`

	// Deprecated - use ChildReferences instead.
	// map of PipelineRunTaskRunStatus with the taskRun name as the key
	// +optional
	TaskRuns map[string]*PipelineRunTaskRunStatus `json:"taskRuns,omitempty"`

	// Deprecated - use ChildReferences instead.
	// map of PipelineRunRunStatus with the run name as the key
	// +optional
	Runs map[string]*PipelineRunRunStatus `json:"runs,omitempty"`

	// PipelineResults are the list of results written out by the pipeline task's containers
	// +optional
	// +listType=atomic
	PipelineResults []PipelineRunResult `json:"pipelineResults,omitempty"`

	// PipelineRunSpec contains the exact spec used to instantiate the run
	PipelineSpec *PipelineSpec `json:"pipelineSpec,omitempty"`

	// list of tasks that were skipped due to when expressions evaluating to false
	// +optional
	// +listType=atomic
	SkippedTasks []SkippedTask `json:"skippedTasks,omitempty"`

	// list of TaskRun and Run names, PipelineTask names, and API versions/kinds for children of this PipelineRun.
	// +optional
	// +listType=atomic
	ChildReferences []ChildStatusReference `json:"childReferences,omitempty"`

	// FinallyStartTime is when all non-finally tasks have been completed and only finally tasks are being executed.
	// +optional
	FinallyStartTime *metav1.Time `json:"finallyStartTime,omitempty"`
}

PipelineRunStatusFields holds the fields of PipelineRunStatus' status. This is defined separately and inlined so that other types can readily consume these fields via duck typing.

func (*PipelineRunStatusFields) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineRunStatusFields.

func (*PipelineRunStatusFields) DeepCopyInto

func (in *PipelineRunStatusFields) DeepCopyInto(out *PipelineRunStatusFields)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PipelineRunTaskRunStatus

type PipelineRunTaskRunStatus struct {
	// PipelineTaskName is the name of the PipelineTask.
	PipelineTaskName string `json:"pipelineTaskName,omitempty"`
	// Status is the TaskRunStatus for the corresponding TaskRun
	// +optional
	Status *TaskRunStatus `json:"status,omitempty"`
	// WhenExpressions is the list of checks guarding the execution of the PipelineTask
	// +optional
	// +listType=atomic
	WhenExpressions []WhenExpression `json:"whenExpressions,omitempty"`
}

PipelineRunTaskRunStatus contains the name of the PipelineTask for this TaskRun and the TaskRun's Status

func (*PipelineRunTaskRunStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineRunTaskRunStatus.

func (*PipelineRunTaskRunStatus) DeepCopyInto

func (in *PipelineRunTaskRunStatus) DeepCopyInto(out *PipelineRunTaskRunStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PipelineSpec

type PipelineSpec struct {
	// Description is a user-facing description of the pipeline that may be
	// used to populate a UI.
	// +optional
	Description string `json:"description,omitempty"`
	// Resources declares the names and types of the resources given to the
	// Pipeline's tasks as inputs and outputs.
	// +listType=atomic
	Resources []PipelineDeclaredResource `json:"resources,omitempty"`
	// Tasks declares the graph of Tasks that execute when this Pipeline is run.
	// +listType=atomic
	Tasks []PipelineTask `json:"tasks,omitempty"`
	// Params declares a list of input parameters that must be supplied when
	// this Pipeline is run.
	// +listType=atomic
	Params []ParamSpec `json:"params,omitempty"`
	// Workspaces declares a set of named workspaces that are expected to be
	// provided by a PipelineRun.
	// +optional
	// +listType=atomic
	Workspaces []PipelineWorkspaceDeclaration `json:"workspaces,omitempty"`
	// Results are values that this pipeline can output once run
	// +optional
	// +listType=atomic
	Results []PipelineResult `json:"results,omitempty"`
	// Finally declares the list of Tasks that execute just before leaving the Pipeline
	// i.e. either after all Tasks are finished executing successfully
	// or after a failure which would result in ending the Pipeline
	// +listType=atomic
	Finally []PipelineTask `json:"finally,omitempty"`
}

PipelineSpec defines the desired state of Pipeline.

func (*PipelineSpec) ConvertFrom added in v0.39.0

func (ps *PipelineSpec) ConvertFrom(ctx context.Context, source *v1.PipelineSpec) error

ConvertFrom implements apis.Convertible

func (*PipelineSpec) ConvertTo added in v0.39.0

func (ps *PipelineSpec) ConvertTo(ctx context.Context, sink *v1.PipelineSpec) error

ConvertTo implements apis.Convertible

func (*PipelineSpec) DeepCopy

func (in *PipelineSpec) DeepCopy() *PipelineSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineSpec.

func (*PipelineSpec) DeepCopyInto

func (in *PipelineSpec) DeepCopyInto(out *PipelineSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PipelineSpec) SetDefaults

func (ps *PipelineSpec) SetDefaults(ctx context.Context)

SetDefaults sets default values for the PipelineSpec's Params, Tasks, and Finally

func (*PipelineSpec) Validate

func (ps *PipelineSpec) Validate(ctx context.Context) (errs *apis.FieldError)

Validate checks that taskNames in the Pipeline are valid and that the graph of Tasks expressed in the Pipeline makes sense.

type PipelineTask

type PipelineTask struct {
	// Name is the name of this task within the context of a Pipeline. Name is
	// used as a coordinate with the `from` and `runAfter` fields to establish
	// the execution order of tasks relative to one another.
	Name string `json:"name,omitempty"`

	// TaskRef is a reference to a task definition.
	// +optional
	TaskRef *TaskRef `json:"taskRef,omitempty"`

	// TaskSpec is a specification of a task
	// +optional
	TaskSpec *EmbeddedTask `json:"taskSpec,omitempty"`

	// WhenExpressions is a list of when expressions that need to be true for the task to run
	// +optional
	WhenExpressions WhenExpressions `json:"when,omitempty"`

	// Retries represents how many times this task should be retried in case of task failure: ConditionSucceeded set to False
	// +optional
	Retries int `json:"retries,omitempty"`

	// RunAfter is the list of PipelineTask names that should be executed before
	// this Task executes. (Used to force a specific ordering in graph execution.)
	// +optional
	// +listType=atomic
	RunAfter []string `json:"runAfter,omitempty"`

	// Resources declares the resources given to this task as inputs and
	// outputs.
	// +optional
	Resources *PipelineTaskResources `json:"resources,omitempty"`

	// Parameters declares parameters passed to this task.
	// +optional
	// +listType=atomic
	Params []Param `json:"params,omitempty"`

	// Matrix declares parameters used to fan out this task.
	// +optional
	Matrix *Matrix `json:"matrix,omitempty"`

	// Workspaces maps workspaces from the pipeline spec to the workspaces
	// declared in the Task.
	// +optional
	// +listType=atomic
	Workspaces []WorkspacePipelineTaskBinding `json:"workspaces,omitempty"`

	// Time after which the TaskRun times out. Defaults to 1 hour.
	// Specified TaskRun timeout should be less than 24h.
	// Refer Go's ParseDuration documentation for expected format: https://golang.org/pkg/time/#ParseDuration
	// +optional
	Timeout *metav1.Duration `json:"timeout,omitempty"`
}

PipelineTask defines a task in a Pipeline, passing inputs from both Params and from the output of previous tasks.

func (*PipelineTask) DeepCopy

func (in *PipelineTask) DeepCopy() *PipelineTask

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineTask.

func (*PipelineTask) DeepCopyInto

func (in *PipelineTask) DeepCopyInto(out *PipelineTask)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (PipelineTask) Deps

func (pt PipelineTask) Deps() []string

Deps returns all other PipelineTask dependencies of this PipelineTask, based on resource usage or ordering

func (*PipelineTask) GetMatrixCombinationsCount added in v0.37.0

func (pt *PipelineTask) GetMatrixCombinationsCount() int

GetMatrixCombinationsCount returns the count of combinations of Parameters generated from the Matrix in PipelineTask.

func (PipelineTask) HashKey

func (pt PipelineTask) HashKey() string

HashKey is the name of the PipelineTask, and is used as the key for this PipelineTask in the DAG

func (*PipelineTask) IsMatrixed added in v0.40.0

func (pt *PipelineTask) IsMatrixed() bool

IsMatrixed return whether pipeline task is matrixed

func (*PipelineTask) TaskSpecMetadata added in v0.16.0

func (pt *PipelineTask) TaskSpecMetadata() PipelineTaskMetadata

TaskSpecMetadata returns the metadata of the PipelineTask's EmbeddedTask spec.

func (PipelineTask) Validate added in v0.23.0

func (pt PipelineTask) Validate(ctx context.Context) (errs *apis.FieldError)

Validate classifies whether a task is a custom task, bundle, or a regular task(dag/final) calls the validation routine based on the type of the task

func (PipelineTask) ValidateName added in v0.23.0

func (pt PipelineTask) ValidateName() *apis.FieldError

ValidateName checks whether the PipelineTask's name is a valid DNS label

type PipelineTaskInputResource

type PipelineTaskInputResource struct {
	// Name is the name of the PipelineResource as declared by the Task.
	Name string `json:"name"`
	// Resource is the name of the DeclaredPipelineResource to use.
	Resource string `json:"resource"`
	// From is the list of PipelineTask names that the resource has to come from.
	// (Implies an ordering in the execution graph.)
	// +optional
	// +listType=atomic
	From []string `json:"from,omitempty"`
}

PipelineTaskInputResource maps the name of a declared PipelineResource input dependency in a Task to the resource in the Pipeline's DeclaredPipelineResources that should be used. This input may come from a previous task.

func (*PipelineTaskInputResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineTaskInputResource.

func (*PipelineTaskInputResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PipelineTaskList

type PipelineTaskList []PipelineTask

PipelineTaskList is a list of PipelineTasks

func (PipelineTaskList) DeepCopy

func (in PipelineTaskList) DeepCopy() PipelineTaskList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineTaskList.

func (PipelineTaskList) DeepCopyInto

func (in PipelineTaskList) DeepCopyInto(out *PipelineTaskList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (PipelineTaskList) Deps added in v0.19.0

func (l PipelineTaskList) Deps() map[string][]string

Deps returns a map with key as name of a pipelineTask and value as a list of its dependencies

func (PipelineTaskList) Items

func (l PipelineTaskList) Items() []dag.Task

Items returns a slice of all tasks in the PipelineTaskList, converted to dag.Tasks

func (PipelineTaskList) Names added in v0.20.1

func (l PipelineTaskList) Names() sets.String

Names returns a set of pipeline task names from the given list of pipeline tasks

func (PipelineTaskList) Validate added in v0.23.0

func (l PipelineTaskList) Validate(ctx context.Context, taskNames sets.String, path string) (errs *apis.FieldError)

Validate a list of pipeline tasks including custom task and bundles

type PipelineTaskMetadata added in v0.16.0

type PipelineTaskMetadata struct {
	// +optional
	Labels map[string]string `json:"labels,omitempty"`

	// +optional
	Annotations map[string]string `json:"annotations,omitempty"`
}

PipelineTaskMetadata contains the labels or annotations for an EmbeddedTask

func (*PipelineTaskMetadata) DeepCopy added in v0.16.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineTaskMetadata.

func (*PipelineTaskMetadata) DeepCopyInto added in v0.16.0

func (in *PipelineTaskMetadata) DeepCopyInto(out *PipelineTaskMetadata)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PipelineTaskOutputResource

type PipelineTaskOutputResource struct {
	// Name is the name of the PipelineResource as declared by the Task.
	Name string `json:"name"`
	// Resource is the name of the DeclaredPipelineResource to use.
	Resource string `json:"resource"`
}

PipelineTaskOutputResource maps the name of a declared PipelineResource output dependency in a Task to the resource in the Pipeline's DeclaredPipelineResources that should be used.

func (*PipelineTaskOutputResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineTaskOutputResource.

func (*PipelineTaskOutputResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PipelineTaskParam

type PipelineTaskParam struct {
	Name  string `json:"name"`
	Value string `json:"value"`
}

PipelineTaskParam is used to provide arbitrary string parameters to a Task.

func (*PipelineTaskParam) DeepCopy

func (in *PipelineTaskParam) DeepCopy() *PipelineTaskParam

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineTaskParam.

func (*PipelineTaskParam) DeepCopyInto

func (in *PipelineTaskParam) DeepCopyInto(out *PipelineTaskParam)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PipelineTaskResources

type PipelineTaskResources struct {
	// Inputs holds the mapping from the PipelineResources declared in
	// DeclaredPipelineResources to the input PipelineResources required by the Task.
	// +listType=atomic
	Inputs []PipelineTaskInputResource `json:"inputs,omitempty"`
	// Outputs holds the mapping from the PipelineResources declared in
	// DeclaredPipelineResources to the input PipelineResources required by the Task.
	// +listType=atomic
	Outputs []PipelineTaskOutputResource `json:"outputs,omitempty"`
}

PipelineTaskResources allows a Pipeline to declare how its DeclaredPipelineResources should be provided to a Task as its inputs and outputs.

func (*PipelineTaskResources) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineTaskResources.

func (*PipelineTaskResources) DeepCopyInto

func (in *PipelineTaskResources) DeepCopyInto(out *PipelineTaskResources)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PipelineTaskRun

type PipelineTaskRun struct {
	Name string `json:"name,omitempty"`
}

PipelineTaskRun reports the results of running a step in the Task. Each task has the potential to succeed or fail (based on the exit code) and produces logs.

func (*PipelineTaskRun) DeepCopy

func (in *PipelineTaskRun) DeepCopy() *PipelineTaskRun

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineTaskRun.

func (*PipelineTaskRun) DeepCopyInto

func (in *PipelineTaskRun) DeepCopyInto(out *PipelineTaskRun)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PipelineTaskRunSpec added in v0.13.0

type PipelineTaskRunSpec struct {
	PipelineTaskName       string           `json:"pipelineTaskName,omitempty"`
	TaskServiceAccountName string           `json:"taskServiceAccountName,omitempty"`
	TaskPodTemplate        *pod.PodTemplate `json:"taskPodTemplate,omitempty"`
	// +listType=atomic
	StepOverrides []TaskRunStepOverride `json:"stepOverrides,omitempty"`
	// +listType=atomic
	SidecarOverrides []TaskRunSidecarOverride `json:"sidecarOverrides,omitempty"`

	// +optional
	Metadata *PipelineTaskMetadata `json:"metadata,omitempty"`

	// Compute resources to use for this TaskRun
	ComputeResources *corev1.ResourceRequirements `json:"computeResources,omitempty"`
}

PipelineTaskRunSpec can be used to configure specific specs for a concrete Task

func (*PipelineTaskRunSpec) DeepCopy added in v0.13.0

func (in *PipelineTaskRunSpec) DeepCopy() *PipelineTaskRunSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineTaskRunSpec.

func (*PipelineTaskRunSpec) DeepCopyInto added in v0.13.0

func (in *PipelineTaskRunSpec) DeepCopyInto(out *PipelineTaskRunSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PipelineWorkspaceDeclaration added in v0.13.0

type PipelineWorkspaceDeclaration struct {
	// Name is the name of a workspace to be provided by a PipelineRun.
	Name string `json:"name"`
	// Description is a human readable string describing how the workspace will be
	// used in the Pipeline. It can be useful to include a bit of detail about which
	// tasks are intended to have access to the data on the workspace.
	// +optional
	Description string `json:"description,omitempty"`
	// Optional marks a Workspace as not being required in PipelineRuns. By default
	// this field is false and so declared workspaces are required.
	Optional bool `json:"optional,omitempty"`
}

PipelineWorkspaceDeclaration creates a named slot in a Pipeline that a PipelineRun is expected to populate with a workspace binding.

func (*PipelineWorkspaceDeclaration) DeepCopy added in v0.13.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineWorkspaceDeclaration.

func (*PipelineWorkspaceDeclaration) DeepCopyInto added in v0.13.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PropertySpec added in v0.36.0

type PropertySpec struct {
	Type ParamType `json:"type,omitempty"`
}

PropertySpec defines the struct for object keys

func (*PropertySpec) DeepCopy added in v0.36.0

func (in *PropertySpec) DeepCopy() *PropertySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PropertySpec.

func (*PropertySpec) DeepCopyInto added in v0.36.0

func (in *PropertySpec) DeepCopyInto(out *PropertySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResolverName added in v0.33.0

type ResolverName string

ResolverName is the name of a resolver from which a resource can be requested.

type ResolverRef added in v0.33.0

type ResolverRef struct {
	// Resolver is the name of the resolver that should perform
	// resolution of the referenced Tekton resource, such as "git".
	// +optional
	Resolver ResolverName `json:"resolver,omitempty"`
	// Params contains the parameters used to identify the
	// referenced Tekton resource. Example entries might include
	// "repo" or "path" but the set of params ultimately depends on
	// the chosen resolver.
	// +optional
	// +listType=atomic
	Params []Param `json:"params,omitempty"`
}

ResolverRef can be used to refer to a Pipeline or Task in a remote location like a git repo. This feature is in alpha and these fields are only available when the alpha feature gate is enabled.

func (*ResolverRef) DeepCopy added in v0.33.0

func (in *ResolverRef) DeepCopy() *ResolverRef

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResolverRef.

func (*ResolverRef) DeepCopyInto added in v0.33.0

func (in *ResolverRef) DeepCopyInto(out *ResolverRef)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourceDeclaration

type ResourceDeclaration = resource.ResourceDeclaration

ResourceDeclaration defines an input or output PipelineResource declared as a requirement by another type such as a Task or Condition. The Name field will be used to refer to these PipelineResources within the type's definition, and when provided as an Input, the Name will be the path to the volume mounted containing this PipelineResource as an input (e.g. an input Resource named `workspace` will be mounted at `/workspace`).

type ResourceParam

type ResourceParam = resource.ResourceParam

ResourceParam declares a string value to use for the parameter called Name, and is used in the specific context of PipelineResources.

type ResultRef

type ResultRef struct {
	PipelineTask string `json:"pipelineTask"`
	Result       string `json:"result"`
	ResultsIndex int    `json:"resultsIndex"`
	Property     string `json:"property"`
}

ResultRef is a type that represents a reference to a task run result

func NewResultRefs

func NewResultRefs(expressions []string) []*ResultRef

NewResultRefs extracts all ResultReferences from a param or a pipeline result. If the ResultReference can be extracted, they are returned. Expressions which are not results are ignored.

func PipelineTaskResultRefs added in v0.21.0

func PipelineTaskResultRefs(pt *PipelineTask) []*ResultRef

PipelineTaskResultRefs walks all the places a result reference can be used in a PipelineTask and returns a list of any references that are found.

func (*ResultRef) DeepCopy

func (in *ResultRef) DeepCopy() *ResultRef

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResultRef.

func (*ResultRef) DeepCopyInto

func (in *ResultRef) DeepCopyInto(out *ResultRef)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResultType

type ResultType int

ResultType used to find out whether a PipelineResourceResult is from a task result or not Note that ResultsType is another type which is used to define the data type (e.g. string, array, etc) we used for Results

func (*ResultType) UnmarshalJSON added in v0.28.0

func (r *ResultType) UnmarshalJSON(data []byte) error

UnmarshalJSON unmarshals either an int or a string into a ResultType. String ResultTypes were removed because they made JSON messages bigger, which in turn limited the amount of space in termination messages for task results. String support is maintained for backwards compatibility - the Pipelines controller could be stopped midway through TaskRun execution, updated with support for int in place of string, and then fail the running TaskRun because it doesn't know how to interpret the string value that the TaskRun's entrypoint will emit when it completes.

type ResultValue added in v0.39.0

type ResultValue = ParamValue

ResultValue is a type alias of ParamValue

type ResultsType added in v0.36.0

type ResultsType string

ResultsType indicates the type of a result; Used to distinguish between a single string and an array of strings. Note that there is ResultType used to find out whether a PipelineResourceResult is from a task result or not, which is different from this ResultsType.

const (
	ResultsTypeString ResultsType = "string"
	ResultsTypeArray  ResultsType = "array"
	ResultsTypeObject ResultsType = "object"
)

Valid ResultsType:

type Sidecar

type Sidecar struct {

	// Name of the Sidecar specified as a DNS_LABEL.
	// Each Sidecar in a Task must have a unique name (DNS_LABEL).
	// Cannot be updated.
	Name string `json:"name" protobuf:"bytes,1,opt,name=name"`
	// Image name to be used by the Sidecar.
	// More info: https://kubernetes.io/docs/concepts/containers/images
	// +optional
	Image string `json:"image,omitempty" protobuf:"bytes,2,opt,name=image"`
	// Entrypoint array. Not executed within a shell.
	// The image's ENTRYPOINT is used if this is not provided.
	// Variable references $(VAR_NAME) are expanded using the Sidecar's environment. If a variable
	// cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
	// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
	// produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
	// of whether the variable exists or not. Cannot be updated.
	// More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
	// +optional
	// +listType=atomic
	Command []string `json:"command,omitempty" protobuf:"bytes,3,rep,name=command"`
	// Arguments to the entrypoint.
	// The 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. Double $$ are reduced
	// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
	// produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
	// of whether the variable exists or not. Cannot be updated.
	// More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
	// +optional
	// +listType=atomic
	Args []string `json:"args,omitempty" protobuf:"bytes,4,rep,name=args"`
	// Sidecar's working directory.
	// If not specified, the container runtime's default will be used, which
	// might be configured in the container image.
	// Cannot be updated.
	// +optional
	WorkingDir string `json:"workingDir,omitempty" protobuf:"bytes,5,opt,name=workingDir"`
	// List of ports to expose from the Sidecar. 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.
	// Cannot be updated.
	// +optional
	// +patchMergeKey=containerPort
	// +patchStrategy=merge
	// +listType=map
	// +listMapKey=containerPort
	// +listMapKey=protocol
	Ports []corev1.ContainerPort `json:"ports,omitempty" patchStrategy:"merge" patchMergeKey:"containerPort" protobuf:"bytes,6,rep,name=ports"`
	// List of sources to populate environment variables in the Sidecar.
	// The keys defined within a source must be a C_IDENTIFIER. All invalid keys
	// will be reported as an event when the Sidecar 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.
	// Cannot be updated.
	// +optional
	// +listType=atomic
	EnvFrom []corev1.EnvFromSource `json:"envFrom,omitempty" protobuf:"bytes,19,rep,name=envFrom"`
	// List of environment variables to set in the Sidecar.
	// Cannot be updated.
	// +optional
	// +patchMergeKey=name
	// +patchStrategy=merge
	// +listType=atomic
	Env []corev1.EnvVar `json:"env,omitempty" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,7,rep,name=env"`
	// Compute Resources required by this Sidecar.
	// Cannot be updated.
	// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
	// +optional
	Resources corev1.ResourceRequirements `json:"resources,omitempty" protobuf:"bytes,8,opt,name=resources"`
	// Volumes to mount into the Sidecar's filesystem.
	// Cannot be updated.
	// +optional
	// +patchMergeKey=mountPath
	// +patchStrategy=merge
	// +listType=atomic
	VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty" patchStrategy:"merge" patchMergeKey:"mountPath" protobuf:"bytes,9,rep,name=volumeMounts"`
	// volumeDevices is the list of block devices to be used by the Sidecar.
	// +patchMergeKey=devicePath
	// +patchStrategy=merge
	// +optional
	// +listType=atomic
	VolumeDevices []corev1.VolumeDevice `json:"volumeDevices,omitempty" patchStrategy:"merge" patchMergeKey:"devicePath" protobuf:"bytes,21,rep,name=volumeDevices"`
	// Periodic probe of Sidecar liveness.
	// Container will be restarted if the probe fails.
	// Cannot be updated.
	// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
	// +optional
	LivenessProbe *corev1.Probe `json:"livenessProbe,omitempty" protobuf:"bytes,10,opt,name=livenessProbe"`
	// Periodic probe of Sidecar service readiness.
	// Container will be removed from service endpoints if the probe fails.
	// Cannot be updated.
	// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
	// +optional
	ReadinessProbe *corev1.Probe `json:"readinessProbe,omitempty" protobuf:"bytes,11,opt,name=readinessProbe"`
	// StartupProbe indicates that the Pod the Sidecar is running in has successfully initialized.
	// If specified, no other probes are executed until this completes successfully.
	// If this probe fails, the Pod will be restarted, just as if the livenessProbe failed.
	// This can be used to provide different probe parameters at the beginning of a Pod's lifecycle,
	// when it might take a long time to load data or warm a cache, than during steady-state operation.
	// This cannot be updated.
	// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
	// +optional
	StartupProbe *corev1.Probe `json:"startupProbe,omitempty" protobuf:"bytes,22,opt,name=startupProbe"`
	// Actions that the management system should take in response to Sidecar lifecycle events.
	// Cannot be updated.
	// +optional
	Lifecycle *corev1.Lifecycle `json:"lifecycle,omitempty" protobuf:"bytes,12,opt,name=lifecycle"`
	// Optional: Path at which the file to which the Sidecar's termination message
	// will be written is mounted into the Sidecar's filesystem.
	// Message written is intended to be brief final status, such as an assertion failure message.
	// Will be truncated by the node if greater than 4096 bytes. The total message length across
	// all containers will be limited to 12kb.
	// Defaults to /dev/termination-log.
	// Cannot be updated.
	// +optional
	TerminationMessagePath string `json:"terminationMessagePath,omitempty" protobuf:"bytes,13,opt,name=terminationMessagePath"`
	// Indicate how the termination message should be populated. File will use the contents of
	// terminationMessagePath to populate the Sidecar status message on both success and failure.
	// FallbackToLogsOnError will use the last chunk of Sidecar log output if the termination
	// message file is empty and the Sidecar exited with an error.
	// The log output is limited to 2048 bytes or 80 lines, whichever is smaller.
	// Defaults to File.
	// Cannot be updated.
	// +optional
	TerminationMessagePolicy corev1.TerminationMessagePolicy `` /* 129-byte string literal not displayed */
	// Image pull policy.
	// One of Always, Never, IfNotPresent.
	// Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
	// Cannot be updated.
	// More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
	// +optional
	ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy,omitempty" protobuf:"bytes,14,opt,name=imagePullPolicy,casttype=PullPolicy"`
	// SecurityContext defines the security options the Sidecar should be run with.
	// If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.
	// More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
	// +optional
	SecurityContext *corev1.SecurityContext `json:"securityContext,omitempty" protobuf:"bytes,15,opt,name=securityContext"`

	// Whether this Sidecar should allocate a buffer for stdin in the container runtime. If this
	// is not set, reads from stdin in the Sidecar will always result in EOF.
	// Default is false.
	// +optional
	Stdin bool `json:"stdin,omitempty" protobuf:"varint,16,opt,name=stdin"`
	// Whether the container runtime should close the stdin channel after it has been opened by
	// a single attach. When stdin is true the stdin stream will remain open across multiple attach
	// sessions. If stdinOnce is set to true, stdin is opened on Sidecar start, is empty until the
	// first client attaches to stdin, and then remains open and accepts data until the client disconnects,
	// at which time stdin is closed and remains closed until the Sidecar is restarted. If this
	// flag is false, a container processes that reads from stdin will never receive an EOF.
	// Default is false
	// +optional
	StdinOnce bool `json:"stdinOnce,omitempty" protobuf:"varint,17,opt,name=stdinOnce"`
	// Whether this Sidecar should allocate a TTY for itself, also requires 'stdin' to be true.
	// Default is false.
	// +optional
	TTY bool `json:"tty,omitempty" protobuf:"varint,18,opt,name=tty"`

	// Script is the contents of an executable file to execute.
	//
	// If Script is not empty, the Step cannot have an Command or Args.
	// +optional
	Script string `json:"script,omitempty"`

	// This is an alpha field. You must set the "enable-api-fields" feature flag to "alpha"
	// for this field to be supported.
	//
	// Workspaces is a list of workspaces from the Task that this Sidecar wants
	// exclusive access to. Adding a workspace to this list means that any
	// other Step or Sidecar that does not also request this Workspace will
	// not have access to it.
	// +optional
	// +listType=atomic
	Workspaces []WorkspaceUsage `json:"workspaces,omitempty"`
}

Sidecar has nearly the same data structure as Step but does not have the ability to timeout.

func MergeSidecarsWithOverrides added in v0.34.0

func MergeSidecarsWithOverrides(sidecars []Sidecar, overrides []TaskRunSidecarOverride) ([]Sidecar, error)

MergeSidecarsWithOverrides takes a possibly nil list of overrides and a list of sidecars, merging each of the sidecars with the overrides' resource requirements, if it's not nil, and returning the resulting list.

func (*Sidecar) DeepCopy added in v0.16.0

func (in *Sidecar) DeepCopy() *Sidecar

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Sidecar.

func (*Sidecar) DeepCopyInto added in v0.16.0

func (in *Sidecar) DeepCopyInto(out *Sidecar)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Sidecar) SetContainerFields added in v0.36.0

func (s *Sidecar) SetContainerFields(c corev1.Container)

SetContainerFields sets the fields of the Sidecar to the values of the corresponding fields in the Container

func (*Sidecar) ToK8sContainer added in v0.36.0

func (s *Sidecar) ToK8sContainer() *corev1.Container

ToK8sContainer converts the Sidecar to a Kubernetes Container struct

type SidecarState

type SidecarState struct {
	corev1.ContainerState `json:",inline"`
	Name                  string `json:"name,omitempty"`
	ContainerName         string `json:"container,omitempty"`
	ImageID               string `json:"imageID,omitempty"`
}

SidecarState reports the results of running a sidecar in a Task.

func (*SidecarState) DeepCopy

func (in *SidecarState) DeepCopy() *SidecarState

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SidecarState.

func (*SidecarState) DeepCopyInto

func (in *SidecarState) DeepCopyInto(out *SidecarState)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SkippedTask added in v0.16.0

type SkippedTask struct {
	// Name is the Pipeline Task name
	Name string `json:"name"`
	// Reason is the cause of the PipelineTask being skipped.
	Reason SkippingReason `json:"reason"`
	// WhenExpressions is the list of checks guarding the execution of the PipelineTask
	// +optional
	// +listType=atomic
	WhenExpressions []WhenExpression `json:"whenExpressions,omitempty"`
}

SkippedTask is used to describe the Tasks that were skipped due to their When Expressions evaluating to False. This is a struct because we are looking into including more details about the When Expressions that caused this Task to be skipped.

func (*SkippedTask) DeepCopy added in v0.16.0

func (in *SkippedTask) DeepCopy() *SkippedTask

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SkippedTask.

func (*SkippedTask) DeepCopyInto added in v0.16.0

func (in *SkippedTask) DeepCopyInto(out *SkippedTask)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SkippingReason added in v0.36.0

type SkippingReason string

SkippingReason explains why a PipelineTask was skipped.

const (
	// WhenExpressionsSkip means the task was skipped due to at least one of its when expressions evaluating to false
	WhenExpressionsSkip SkippingReason = "When Expressions evaluated to false"
	// ParentTasksSkip means the task was skipped because its parent was skipped
	ParentTasksSkip SkippingReason = "Parent Tasks were skipped"
	// StoppingSkip means the task was skipped because the pipeline run is stopping
	StoppingSkip SkippingReason = "PipelineRun was stopping"
	// GracefullyCancelledSkip means the task was skipped because the pipeline run has been gracefully cancelled
	GracefullyCancelledSkip SkippingReason = "PipelineRun was gracefully cancelled"
	// GracefullyStoppedSkip means the task was skipped because the pipeline run has been gracefully stopped
	GracefullyStoppedSkip SkippingReason = "PipelineRun was gracefully stopped"
	// MissingResultsSkip means the task was skipped because it's missing necessary results
	MissingResultsSkip SkippingReason = "Results were missing"
	// PipelineTimedOutSkip means the task was skipped because the PipelineRun has passed its overall timeout.
	PipelineTimedOutSkip SkippingReason = "PipelineRun timeout has been reached"
	// TasksTimedOutSkip means the task was skipped because the PipelineRun has passed its Timeouts.Tasks.
	TasksTimedOutSkip SkippingReason = "PipelineRun Tasks timeout has been reached"
	// FinallyTimedOutSkip means the task was skipped because the PipelineRun has passed its Timeouts.Finally.
	FinallyTimedOutSkip SkippingReason = "PipelineRun Finally timeout has been reached"
	// None means the task was not skipped
	None SkippingReason = "None"
)

type Step

type Step struct {

	// Name of the Step specified as a DNS_LABEL.
	// Each Step in a Task must have a unique name.
	Name string `json:"name" protobuf:"bytes,1,opt,name=name"`
	// Image reference name to run for this Step.
	// More info: https://kubernetes.io/docs/concepts/containers/images
	// +optional
	Image string `json:"image,omitempty" protobuf:"bytes,2,opt,name=image"`
	// Entrypoint array. Not executed within a shell.
	// The 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. Double $$ are reduced
	// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
	// produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
	// of whether the variable exists or not. Cannot be updated.
	// More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
	// +optional
	// +listType=atomic
	Command []string `json:"command,omitempty" protobuf:"bytes,3,rep,name=command"`
	// Arguments to the entrypoint.
	// The 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. Double $$ are reduced
	// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
	// produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
	// of whether the variable exists or not. Cannot be updated.
	// More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
	// +optional
	// +listType=atomic
	Args []string `json:"args,omitempty" protobuf:"bytes,4,rep,name=args"`
	// Step's working directory.
	// If not specified, the container runtime's default will be used, which
	// might be configured in the container image.
	// Cannot be updated.
	// +optional
	WorkingDir string `json:"workingDir,omitempty" protobuf:"bytes,5,opt,name=workingDir"`
	// Deprecated. This field will be removed in a future release.
	// List of ports to expose from the Step's 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.
	// Cannot be updated.
	// +optional
	// +patchMergeKey=containerPort
	// +patchStrategy=merge
	// +listType=map
	// +listMapKey=containerPort
	// +listMapKey=protocol
	DeprecatedPorts []corev1.ContainerPort `json:"ports,omitempty" patchStrategy:"merge" patchMergeKey:"containerPort" protobuf:"bytes,6,rep,name=ports"`
	// 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.
	// Cannot be updated.
	// +optional
	// +listType=atomic
	EnvFrom []corev1.EnvFromSource `json:"envFrom,omitempty" protobuf:"bytes,19,rep,name=envFrom"`
	// List of environment variables to set in the container.
	// Cannot be updated.
	// +optional
	// +patchMergeKey=name
	// +patchStrategy=merge
	// +listType=atomic
	Env []corev1.EnvVar `json:"env,omitempty" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,7,rep,name=env"`
	// Compute Resources required by this Step.
	// Cannot be updated.
	// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
	// +optional
	Resources corev1.ResourceRequirements `json:"resources,omitempty" protobuf:"bytes,8,opt,name=resources"`
	// Volumes to mount into the Step's filesystem.
	// Cannot be updated.
	// +optional
	// +patchMergeKey=mountPath
	// +patchStrategy=merge
	// +listType=atomic
	VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty" patchStrategy:"merge" patchMergeKey:"mountPath" protobuf:"bytes,9,rep,name=volumeMounts"`
	// volumeDevices is the list of block devices to be used by the Step.
	// +patchMergeKey=devicePath
	// +patchStrategy=merge
	// +optional
	// +listType=atomic
	VolumeDevices []corev1.VolumeDevice `json:"volumeDevices,omitempty" patchStrategy:"merge" patchMergeKey:"devicePath" protobuf:"bytes,21,rep,name=volumeDevices"`
	// Deprecated. This field will be removed in a future release.
	// Periodic probe of container liveness.
	// Step will be restarted if the probe fails.
	// Cannot be updated.
	// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
	// +optional
	DeprecatedLivenessProbe *corev1.Probe `json:"livenessProbe,omitempty" protobuf:"bytes,10,opt,name=livenessProbe"`
	// Deprecated. This field will be removed in a future release.
	// Periodic probe of container service readiness.
	// Step will be removed from service endpoints if the probe fails.
	// Cannot be updated.
	// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
	// +optional
	DeprecatedReadinessProbe *corev1.Probe `json:"readinessProbe,omitempty" protobuf:"bytes,11,opt,name=readinessProbe"`
	// Deprecated. This field will be removed in a future release.
	// DeprecatedStartupProbe indicates that the Pod this Step runs in has successfully initialized.
	// If specified, no other probes are executed until this completes successfully.
	// If this probe fails, the Pod will be restarted, just as if the livenessProbe failed.
	// This can be used to provide different probe parameters at the beginning of a Pod's lifecycle,
	// when it might take a long time to load data or warm a cache, than during steady-state operation.
	// This cannot be updated.
	// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
	// +optional
	DeprecatedStartupProbe *corev1.Probe `json:"startupProbe,omitempty" protobuf:"bytes,22,opt,name=startupProbe"`
	// Deprecated. This field will be removed in a future release.
	// Actions that the management system should take in response to container lifecycle events.
	// Cannot be updated.
	// +optional
	DeprecatedLifecycle *corev1.Lifecycle `json:"lifecycle,omitempty" protobuf:"bytes,12,opt,name=lifecycle"`
	// Deprecated. This field will be removed in a future release and can't be meaningfully used.
	// +optional
	DeprecatedTerminationMessagePath string `json:"terminationMessagePath,omitempty" protobuf:"bytes,13,opt,name=terminationMessagePath"`
	// Deprecated. This field will be removed in a future release and can't be meaningfully used.
	// +optional
	DeprecatedTerminationMessagePolicy corev1.TerminationMessagePolicy `` /* 129-byte string literal not displayed */
	// Image pull policy.
	// One of Always, Never, IfNotPresent.
	// Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
	// Cannot be updated.
	// More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
	// +optional
	ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy,omitempty" protobuf:"bytes,14,opt,name=imagePullPolicy,casttype=PullPolicy"`
	// SecurityContext defines the security options the Step should be run with.
	// If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.
	// More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
	// +optional
	SecurityContext *corev1.SecurityContext `json:"securityContext,omitempty" protobuf:"bytes,15,opt,name=securityContext"`

	// Deprecated. This field will be removed in a future release.
	// Whether this container should allocate a buffer for stdin in the container runtime. If this
	// is not set, reads from stdin in the container will always result in EOF.
	// Default is false.
	// +optional
	DeprecatedStdin bool `json:"stdin,omitempty" protobuf:"varint,16,opt,name=stdin"`
	// Deprecated. This field will be removed in a future release.
	// Whether the container runtime should close the stdin channel after it has been opened by
	// a single attach. When stdin is true the stdin stream will remain open across multiple attach
	// sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the
	// first client attaches to stdin, and then remains open and accepts data until the client disconnects,
	// at which time stdin is closed and remains closed until the container is restarted. If this
	// flag is false, a container processes that reads from stdin will never receive an EOF.
	// Default is false
	// +optional
	DeprecatedStdinOnce bool `json:"stdinOnce,omitempty" protobuf:"varint,17,opt,name=stdinOnce"`
	// Deprecated. This field will be removed in a future release.
	// Whether this container should allocate a DeprecatedTTY for itself, also requires 'stdin' to be true.
	// Default is false.
	// +optional
	DeprecatedTTY bool `json:"tty,omitempty" protobuf:"varint,18,opt,name=tty"`

	// Script is the contents of an executable file to execute.
	//
	// If Script is not empty, the Step cannot have an Command and the Args will be passed to the Script.
	// +optional
	Script string `json:"script,omitempty"`

	// Timeout is the time after which the step times out. Defaults to never.
	// Refer to Go's ParseDuration documentation for expected format: https://golang.org/pkg/time/#ParseDuration
	// +optional
	Timeout *metav1.Duration `json:"timeout,omitempty"`

	// This is an alpha field. You must set the "enable-api-fields" feature flag to "alpha"
	// for this field to be supported.
	//
	// Workspaces is a list of workspaces from the Task that this Step wants
	// exclusive access to. Adding a workspace to this list means that any
	// other Step or Sidecar that does not also request this Workspace will
	// not have access to it.
	// +optional
	// +listType=atomic
	Workspaces []WorkspaceUsage `json:"workspaces,omitempty"`

	// OnError defines the exiting behavior of a container on error
	// can be set to [ continue | stopAndFail ]
	OnError OnErrorType `json:"onError,omitempty"`

	// Stores configuration for the stdout stream of the step.
	// +optional
	StdoutConfig *StepOutputConfig `json:"stdoutConfig,omitempty"`
	// Stores configuration for the stderr stream of the step.
	// +optional
	StderrConfig *StepOutputConfig `json:"stderrConfig,omitempty"`
}

Step runs a subcomponent of a Task

func MergeStepsWithOverrides added in v0.34.0

func MergeStepsWithOverrides(steps []Step, overrides []TaskRunStepOverride) ([]Step, error)

MergeStepsWithOverrides takes a possibly nil list of overrides and a list of steps, merging each of the steps with the overrides' resource requirements, if it's not nil, and returning the resulting list.

func MergeStepsWithStepTemplate

func MergeStepsWithStepTemplate(template *StepTemplate, steps []Step) ([]Step, error)

MergeStepsWithStepTemplate takes a possibly nil container template and a list of steps, merging each of the steps with the container template, if it's not nil, and returning the resulting list.

func (*Step) DeepCopy

func (in *Step) DeepCopy() *Step

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Step.

func (*Step) DeepCopyInto

func (in *Step) DeepCopyInto(out *Step)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Step) SetContainerFields added in v0.36.0

func (s *Step) SetContainerFields(c corev1.Container)

SetContainerFields sets the fields of the Step to the values of the corresponding fields in the Container

func (*Step) ToK8sContainer added in v0.36.0

func (s *Step) ToK8sContainer() *corev1.Container

ToK8sContainer converts the Step to a Kubernetes Container struct

type StepOutputConfig added in v0.38.0

type StepOutputConfig struct {
	// Path to duplicate stdout stream to on container's local filesystem.
	// +optional
	Path string `json:"path,omitempty"`
}

StepOutputConfig stores configuration for a step output stream.

func (*StepOutputConfig) DeepCopy added in v0.38.0

func (in *StepOutputConfig) DeepCopy() *StepOutputConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StepOutputConfig.

func (*StepOutputConfig) DeepCopyInto added in v0.38.0

func (in *StepOutputConfig) DeepCopyInto(out *StepOutputConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type StepState

type StepState struct {
	corev1.ContainerState `json:",inline"`
	Name                  string `json:"name,omitempty"`
	ContainerName         string `json:"container,omitempty"`
	ImageID               string `json:"imageID,omitempty"`
}

StepState reports the results of running a step in a Task.

func (*StepState) DeepCopy

func (in *StepState) DeepCopy() *StepState

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StepState.

func (*StepState) DeepCopyInto

func (in *StepState) DeepCopyInto(out *StepState)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type StepTemplate added in v0.36.0

type StepTemplate struct {

	// Deprecated. This field will be removed in a future release.
	// Default name for each Step specified as a DNS_LABEL.
	// Each Step in a Task must have a unique name.
	// Cannot be updated.
	DeprecatedName string `json:"name" protobuf:"bytes,1,opt,name=name"`
	// Default image name to use for each Step.
	// More info: https://kubernetes.io/docs/concepts/containers/images
	// This field is optional to allow higher level config management to default or override
	// container images in workload controllers like Deployments and StatefulSets.
	// +optional
	Image string `json:"image,omitempty" protobuf:"bytes,2,opt,name=image"`
	// 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 Step's environment. If a variable
	// cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
	// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
	// produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
	// of whether the variable exists or not. Cannot be updated.
	// More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
	// +optional
	// +listType=atomic
	Command []string `json:"command,omitempty" protobuf:"bytes,3,rep,name=command"`
	// Arguments to the entrypoint.
	// The image's CMD is used if this is not provided.
	// Variable references $(VAR_NAME) are expanded using the Step's environment. If a variable
	// cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced
	// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will
	// produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless
	// of whether the variable exists or not. Cannot be updated.
	// More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
	// +optional
	// +listType=atomic
	Args []string `json:"args,omitempty" protobuf:"bytes,4,rep,name=args"`
	// Step's working directory.
	// If not specified, the container runtime's default will be used, which
	// might be configured in the container image.
	// Cannot be updated.
	// +optional
	WorkingDir string `json:"workingDir,omitempty" protobuf:"bytes,5,opt,name=workingDir"`
	// Deprecated. This field will be removed in a future release.
	// List of ports to expose from the Step's 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.
	// Cannot be updated.
	// +optional
	// +patchMergeKey=containerPort
	// +patchStrategy=merge
	// +listType=map
	// +listMapKey=containerPort
	// +listMapKey=protocol
	DeprecatedPorts []corev1.ContainerPort `json:"ports,omitempty" patchStrategy:"merge" patchMergeKey:"containerPort" protobuf:"bytes,6,rep,name=ports"`
	// List of sources to populate environment variables in the Step.
	// 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.
	// Cannot be updated.
	// +optional
	// +listType=atomic
	EnvFrom []corev1.EnvFromSource `json:"envFrom,omitempty" protobuf:"bytes,19,rep,name=envFrom"`
	// List of environment variables to set in the container.
	// Cannot be updated.
	// +optional
	// +patchMergeKey=name
	// +patchStrategy=merge
	// +listType=atomic
	Env []corev1.EnvVar `json:"env,omitempty" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,7,rep,name=env"`
	// Compute Resources required by this Step.
	// Cannot be updated.
	// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
	// +optional
	Resources corev1.ResourceRequirements `json:"resources,omitempty" protobuf:"bytes,8,opt,name=resources"`
	// Volumes to mount into the Step's filesystem.
	// Cannot be updated.
	// +optional
	// +patchMergeKey=mountPath
	// +patchStrategy=merge
	// +listType=atomic
	VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty" patchStrategy:"merge" patchMergeKey:"mountPath" protobuf:"bytes,9,rep,name=volumeMounts"`
	// volumeDevices is the list of block devices to be used by the Step.
	// +patchMergeKey=devicePath
	// +patchStrategy=merge
	// +optional
	// +listType=atomic
	VolumeDevices []corev1.VolumeDevice `json:"volumeDevices,omitempty" patchStrategy:"merge" patchMergeKey:"devicePath" protobuf:"bytes,21,rep,name=volumeDevices"`
	// Deprecated. This field will be removed in a future release.
	// Periodic probe of container liveness.
	// Container will be restarted if the probe fails.
	// Cannot be updated.
	// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
	// +optional
	DeprecatedLivenessProbe *corev1.Probe `json:"livenessProbe,omitempty" protobuf:"bytes,10,opt,name=livenessProbe"`
	// Deprecated. This field will be removed in a future release.
	// Periodic probe of container service readiness.
	// Container will be removed from service endpoints if the probe fails.
	// Cannot be updated.
	// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
	// +optional
	DeprecatedReadinessProbe *corev1.Probe `json:"readinessProbe,omitempty" protobuf:"bytes,11,opt,name=readinessProbe"`
	// Deprecated. This field will be removed in a future release.
	// DeprecatedStartupProbe indicates that the Pod has successfully initialized.
	// If specified, no other probes are executed until this completes successfully.
	// If this probe fails, the Pod will be restarted, just as if the livenessProbe failed.
	// This can be used to provide different probe parameters at the beginning of a Pod's lifecycle,
	// when it might take a long time to load data or warm a cache, than during steady-state operation.
	// This cannot be updated.
	// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
	// +optional
	DeprecatedStartupProbe *corev1.Probe `json:"startupProbe,omitempty" protobuf:"bytes,22,opt,name=startupProbe"`
	// Deprecated. This field will be removed in a future release.
	// Actions that the management system should take in response to container lifecycle events.
	// Cannot be updated.
	// +optional
	DeprecatedLifecycle *corev1.Lifecycle `json:"lifecycle,omitempty" protobuf:"bytes,12,opt,name=lifecycle"`
	// Deprecated. This field will be removed in a future release and cannot be meaningfully used.
	// +optional
	DeprecatedTerminationMessagePath string `json:"terminationMessagePath,omitempty" protobuf:"bytes,13,opt,name=terminationMessagePath"`
	// Deprecated. This field will be removed in a future release and cannot be meaningfully used.
	// +optional
	DeprecatedTerminationMessagePolicy corev1.TerminationMessagePolicy `` /* 129-byte string literal not displayed */
	// Image pull policy.
	// One of Always, Never, IfNotPresent.
	// Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
	// Cannot be updated.
	// More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
	// +optional
	ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy,omitempty" protobuf:"bytes,14,opt,name=imagePullPolicy,casttype=PullPolicy"`
	// SecurityContext defines the security options the Step should be run with.
	// If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.
	// More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
	// +optional
	SecurityContext *corev1.SecurityContext `json:"securityContext,omitempty" protobuf:"bytes,15,opt,name=securityContext"`

	// Deprecated. This field will be removed in a future release.
	// Whether this Step should allocate a buffer for stdin in the container runtime. If this
	// is not set, reads from stdin in the Step will always result in EOF.
	// Default is false.
	// +optional
	DeprecatedStdin bool `json:"stdin,omitempty" protobuf:"varint,16,opt,name=stdin"`
	// Deprecated. This field will be removed in a future release.
	// Whether the container runtime should close the stdin channel after it has been opened by
	// a single attach. When stdin is true the stdin stream will remain open across multiple attach
	// sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the
	// first client attaches to stdin, and then remains open and accepts data until the client disconnects,
	// at which time stdin is closed and remains closed until the container is restarted. If this
	// flag is false, a container processes that reads from stdin will never receive an EOF.
	// Default is false
	// +optional
	DeprecatedStdinOnce bool `json:"stdinOnce,omitempty" protobuf:"varint,17,opt,name=stdinOnce"`
	// Deprecated. This field will be removed in a future release.
	// Whether this Step should allocate a DeprecatedTTY for itself, also requires 'stdin' to be true.
	// Default is false.
	// +optional
	DeprecatedTTY bool `json:"tty,omitempty" protobuf:"varint,18,opt,name=tty"`
}

StepTemplate is a template for a Step

func (*StepTemplate) DeepCopy added in v0.36.0

func (in *StepTemplate) DeepCopy() *StepTemplate

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StepTemplate.

func (*StepTemplate) DeepCopyInto added in v0.36.0

func (in *StepTemplate) DeepCopyInto(out *StepTemplate)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*StepTemplate) SetContainerFields added in v0.36.0

func (s *StepTemplate) SetContainerFields(c corev1.Container)

SetContainerFields sets the fields of the Step to the values of the corresponding fields in the Container

func (*StepTemplate) ToK8sContainer added in v0.36.0

func (s *StepTemplate) ToK8sContainer() *corev1.Container

ToK8sContainer converts the StepTemplate to a Kubernetes Container struct

type Task

type Task struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ObjectMeta `json:"metadata"`

	// Spec holds the desired state of the Task from the client
	// +optional
	Spec TaskSpec `json:"spec"`
}

Task represents a collection of sequential steps that are run as part of a Pipeline using a set of inputs and producing a set of outputs. Tasks execute when TaskRuns are created that provide the input parameters and resources and output resources the Task requires.

+k8s:openapi-gen=true

func (*Task) ConvertFrom added in v0.12.0

func (t *Task) ConvertFrom(ctx context.Context, from apis.Convertible) error

ConvertFrom implements apis.Convertible

func (*Task) ConvertTo added in v0.12.0

func (t *Task) ConvertTo(ctx context.Context, to apis.Convertible) error

ConvertTo implements apis.Convertible

func (*Task) Copy

func (t *Task) Copy() TaskObject

Copy returns a deep copy of the task

func (*Task) DeepCopy

func (in *Task) DeepCopy() *Task

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Task.

func (*Task) DeepCopyInto

func (in *Task) DeepCopyInto(out *Task)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Task) DeepCopyObject

func (in *Task) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Task) GetGroupVersionKind added in v0.29.0

func (*Task) GetGroupVersionKind() schema.GroupVersionKind

GetGroupVersionKind implements kmeta.OwnerRefable.

func (*Task) SetDefaults

func (t *Task) SetDefaults(ctx context.Context)

SetDefaults implements apis.Defaultable

func (*Task) TaskMetadata

func (t *Task) TaskMetadata() metav1.ObjectMeta

TaskMetadata returns the task's ObjectMeta

func (*Task) TaskSpec

func (t *Task) TaskSpec() TaskSpec

TaskSpec returns the task's spec

func (*Task) Validate

func (t *Task) Validate(ctx context.Context) *apis.FieldError

Validate implements apis.Validatable

type TaskKind

type TaskKind string

TaskKind defines the type of Task used by the pipeline.

const (
	// NamespacedTaskKind indicates that the task type has a namespaced scope.
	NamespacedTaskKind TaskKind = "Task"
	// ClusterTaskKind indicates that task type has a cluster scope.
	ClusterTaskKind TaskKind = "ClusterTask"
)

type TaskList

type TaskList struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Task `json:"items"`
}

TaskList contains a list of Task +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*TaskList) DeepCopy

func (in *TaskList) DeepCopy() *TaskList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskList.

func (*TaskList) DeepCopyInto

func (in *TaskList) DeepCopyInto(out *TaskList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TaskList) DeepCopyObject

func (in *TaskList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type TaskModifier

type TaskModifier interface {
	GetStepsToPrepend() []Step
	GetStepsToAppend() []Step
	GetVolumes() []v1.Volume
}

TaskModifier is an interface to be implemented by different PipelineResources

type TaskObject added in v0.19.0

type TaskObject interface {
	apis.Defaultable
	TaskMetadata() metav1.ObjectMeta
	TaskSpec() TaskSpec
	Copy() TaskObject
}

TaskObject is implemented by Task and ClusterTask

type TaskRef

type TaskRef struct {
	// Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names
	Name string `json:"name,omitempty"`
	// TaskKind indicates the kind of the task, namespaced or cluster scoped.
	Kind TaskKind `json:"kind,omitempty"`
	// API version of the referent
	// +optional
	APIVersion string `json:"apiVersion,omitempty"`
	// Bundle url reference to a Tekton Bundle.
	// +optional
	Bundle string `json:"bundle,omitempty"`

	// ResolverRef allows referencing a Task in a remote location
	// like a git repo. This field is only supported when the alpha
	// feature gate is enabled.
	// +optional
	ResolverRef `json:",omitempty"`
}

TaskRef can be used to refer to a specific instance of a task.

func (*TaskRef) DeepCopy

func (in *TaskRef) DeepCopy() *TaskRef

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskRef.

func (*TaskRef) DeepCopyInto

func (in *TaskRef) DeepCopyInto(out *TaskRef)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TaskRef) Validate added in v0.33.0

func (ref *TaskRef) Validate(ctx context.Context) (errs *apis.FieldError)

Validate ensures that a supplied TaskRef field is populated correctly. No errors are returned for a nil TaskRef.

type TaskResource

type TaskResource struct {
	ResourceDeclaration `json:",inline"`
}

TaskResource defines an input or output Resource declared as a requirement by a Task. The Name field will be used to refer to these Resources within the Task definition, and when provided as an Input, the Name will be the path to the volume mounted containing this Resource as an input (e.g. an input Resource named `workspace` will be mounted at `/workspace`).

func (*TaskResource) DeepCopy

func (in *TaskResource) DeepCopy() *TaskResource

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskResource.

func (*TaskResource) DeepCopyInto

func (in *TaskResource) DeepCopyInto(out *TaskResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TaskResourceBinding

type TaskResourceBinding struct {
	PipelineResourceBinding `json:",inline"`
	// Paths will probably be removed in #1284, and then PipelineResourceBinding can be used instead.
	// The optional Path field corresponds to a path on disk at which the Resource can be found
	// (used when providing the resource via mounted volume, overriding the default logic to fetch the Resource).
	// +optional
	// +listType=atomic
	Paths []string `json:"paths,omitempty"`
}

TaskResourceBinding points to the PipelineResource that will be used for the Task input or output called Name.

func (*TaskResourceBinding) DeepCopy

func (in *TaskResourceBinding) DeepCopy() *TaskResourceBinding

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskResourceBinding.

func (*TaskResourceBinding) DeepCopyInto

func (in *TaskResourceBinding) DeepCopyInto(out *TaskResourceBinding)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TaskResources

type TaskResources struct {
	// Inputs holds the mapping from the PipelineResources declared in
	// DeclaredPipelineResources to the input PipelineResources required by the Task.
	// +listType=atomic
	Inputs []TaskResource `json:"inputs,omitempty"`
	// Outputs holds the mapping from the PipelineResources declared in
	// DeclaredPipelineResources to the input PipelineResources required by the Task.
	// +listType=atomic
	Outputs []TaskResource `json:"outputs,omitempty"`
}

TaskResources allows a Pipeline to declare how its DeclaredPipelineResources should be provided to a Task as its inputs and outputs.

func (*TaskResources) DeepCopy

func (in *TaskResources) DeepCopy() *TaskResources

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskResources.

func (*TaskResources) DeepCopyInto

func (in *TaskResources) DeepCopyInto(out *TaskResources)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TaskResources) Validate

func (tr *TaskResources) Validate(context.Context) (errs *apis.FieldError)

Validate implements apis.Validatable

type TaskResult

type TaskResult struct {
	// Name the given name
	Name string `json:"name"`

	// Type is the user-specified type of the result. The possible type
	// is currently "string" and will support "array" in following work.
	// +optional
	Type ResultsType `json:"type,omitempty"`

	// Properties is the JSON Schema properties to support key-value pairs results.
	// +optional
	Properties map[string]PropertySpec `json:"properties,omitempty"`

	// Description is a human-readable description of the result
	// +optional
	Description string `json:"description,omitempty"`
}

TaskResult used to describe the results of a task

func (*TaskResult) DeepCopy

func (in *TaskResult) DeepCopy() *TaskResult

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskResult.

func (*TaskResult) DeepCopyInto

func (in *TaskResult) DeepCopyInto(out *TaskResult)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TaskResult) SetDefaults added in v0.36.0

func (tr *TaskResult) SetDefaults(context.Context)

SetDefaults set the default type for TaskResult

func (TaskResult) Validate added in v0.17.0

func (tr TaskResult) Validate(ctx context.Context) (errs *apis.FieldError)

Validate implements apis.Validatable

type TaskRun

type TaskRun struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// +optional
	Spec TaskRunSpec `json:"spec,omitempty"`
	// +optional
	Status TaskRunStatus `json:"status,omitempty"`
}

TaskRun represents a single execution of a Task. TaskRuns are how the steps specified in a Task are executed; they specify the parameters and resources used to run the steps in a Task.

+k8s:openapi-gen=true

func (*TaskRun) ConvertFrom added in v0.12.0

func (tr *TaskRun) ConvertFrom(ctx context.Context, from apis.Convertible) error

ConvertFrom implements apis.Convertible

func (*TaskRun) ConvertTo added in v0.12.0

func (tr *TaskRun) ConvertTo(ctx context.Context, to apis.Convertible) error

ConvertTo implements apis.Convertible

func (*TaskRun) DeepCopy

func (in *TaskRun) DeepCopy() *TaskRun

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskRun.

func (*TaskRun) DeepCopyInto

func (in *TaskRun) DeepCopyInto(out *TaskRun)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TaskRun) DeepCopyObject

func (in *TaskRun) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*TaskRun) GetGroupVersionKind added in v0.27.0

func (*TaskRun) GetGroupVersionKind() schema.GroupVersionKind

GetGroupVersionKind implements kmeta.OwnerRefable.

func (*TaskRun) GetNamespacedName added in v0.16.0

func (tr *TaskRun) GetNamespacedName() types.NamespacedName

GetNamespacedName returns a k8s namespaced name that identifies this TaskRun

func (*TaskRun) GetPipelineRunPVCName

func (tr *TaskRun) GetPipelineRunPVCName() string

GetPipelineRunPVCName for taskrun gets pipelinerun

func (*TaskRun) GetStatusCondition added in v0.14.0

func (tr *TaskRun) GetStatusCondition() apis.ConditionAccessor

GetStatusCondition returns the task run status as a ConditionAccessor

func (*TaskRun) GetTimeout added in v0.12.0

func (tr *TaskRun) GetTimeout(ctx context.Context) time.Duration

GetTimeout returns the timeout for the TaskRun, or the default if not specified

func (*TaskRun) HasPipelineRunOwnerReference

func (tr *TaskRun) HasPipelineRunOwnerReference() bool

HasPipelineRunOwnerReference returns true of TaskRun has owner reference of type PipelineRun

func (*TaskRun) HasStarted

func (tr *TaskRun) HasStarted() bool

HasStarted function check whether taskrun has valid start time set in its status

func (*TaskRun) HasTimedOut added in v0.12.0

func (tr *TaskRun) HasTimedOut(ctx context.Context, c clock.PassiveClock) bool

HasTimedOut returns true if the TaskRun runtime is beyond the allowed timeout

func (*TaskRun) HasVolumeClaimTemplate added in v0.12.0

func (tr *TaskRun) HasVolumeClaimTemplate() bool

HasVolumeClaimTemplate returns true if TaskRun contains volumeClaimTemplates that is used for creating PersistentVolumeClaims with an OwnerReference for each run

func (*TaskRun) IsCancelled

func (tr *TaskRun) IsCancelled() bool

IsCancelled returns true if the TaskRun's spec status is set to Cancelled state

func (*TaskRun) IsDone

func (tr *TaskRun) IsDone() bool

IsDone returns true if the TaskRun's status indicates that it is done.

func (*TaskRun) IsSuccessful

func (tr *TaskRun) IsSuccessful() bool

IsSuccessful returns true if the TaskRun's status indicates that it is done.

func (*TaskRun) SetDefaults

func (tr *TaskRun) SetDefaults(ctx context.Context)

SetDefaults implements apis.Defaultable

func (*TaskRun) Validate

func (tr *TaskRun) Validate(ctx context.Context) *apis.FieldError

Validate taskrun

type TaskRunDebug added in v0.26.0

type TaskRunDebug struct {
	// +optional
	// +listType=atomic
	Breakpoint []string `json:"breakpoint,omitempty"`
}

TaskRunDebug defines the breakpoint config for a particular TaskRun

func (*TaskRunDebug) DeepCopy added in v0.26.0

func (in *TaskRunDebug) DeepCopy() *TaskRunDebug

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskRunDebug.

func (*TaskRunDebug) DeepCopyInto added in v0.26.0

func (in *TaskRunDebug) DeepCopyInto(out *TaskRunDebug)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TaskRunInputs

type TaskRunInputs struct {
	// +optional
	// +listType=atomic
	Resources []TaskResourceBinding `json:"resources,omitempty"`
	// +optional
	// +listType=atomic
	Params []Param `json:"params,omitempty"`
}

TaskRunInputs holds the input values that this task was invoked with.

func (*TaskRunInputs) DeepCopy

func (in *TaskRunInputs) DeepCopy() *TaskRunInputs

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskRunInputs.

func (*TaskRunInputs) DeepCopyInto

func (in *TaskRunInputs) DeepCopyInto(out *TaskRunInputs)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TaskRunList

type TaskRunList struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []TaskRun `json:"items"`
}

TaskRunList contains a list of TaskRun

func (*TaskRunList) DeepCopy

func (in *TaskRunList) DeepCopy() *TaskRunList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskRunList.

func (*TaskRunList) DeepCopyInto

func (in *TaskRunList) DeepCopyInto(out *TaskRunList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TaskRunList) DeepCopyObject

func (in *TaskRunList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type TaskRunOutputs

type TaskRunOutputs struct {
	// +optional
	// +listType=atomic
	Resources []TaskResourceBinding `json:"resources,omitempty"`
}

TaskRunOutputs holds the output values that this task was invoked with.

func (*TaskRunOutputs) DeepCopy

func (in *TaskRunOutputs) DeepCopy() *TaskRunOutputs

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskRunOutputs.

func (*TaskRunOutputs) DeepCopyInto

func (in *TaskRunOutputs) DeepCopyInto(out *TaskRunOutputs)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TaskRunReason added in v0.14.0

type TaskRunReason string

TaskRunReason is an enum used to store all TaskRun reason for the Succeeded condition that are controlled by the TaskRun itself. Failure reasons that emerge from underlying resources are not included here

const (
	// TaskRunReasonStarted is the reason set when the TaskRun has just started
	TaskRunReasonStarted TaskRunReason = "Started"
	// TaskRunReasonRunning is the reason set when the TaskRun is running
	TaskRunReasonRunning TaskRunReason = "Running"
	// TaskRunReasonSuccessful is the reason set when the TaskRun completed successfully
	TaskRunReasonSuccessful TaskRunReason = "Succeeded"
	// TaskRunReasonFailed is the reason set when the TaskRun completed with a failure
	TaskRunReasonFailed TaskRunReason = "Failed"
	// TaskRunReasonCancelled is the reason set when the Taskrun is cancelled by the user
	TaskRunReasonCancelled TaskRunReason = "TaskRunCancelled"
	// TaskRunReasonTimedOut is the reason set when the Taskrun has timed out
	TaskRunReasonTimedOut TaskRunReason = "TaskRunTimeout"
	// TaskRunReasonResolvingTaskRef indicates that the TaskRun is waiting for
	// its taskRef to be asynchronously resolved.
	TaskRunReasonResolvingTaskRef = "ResolvingTaskRef"
	// TaskRunReasonImagePullFailed is the reason set when the step of a task fails due to image not being pulled
	TaskRunReasonImagePullFailed TaskRunReason = "TaskRunImagePullFailed"
)

func (TaskRunReason) String added in v0.14.0

func (t TaskRunReason) String() string

type TaskRunResources

type TaskRunResources struct {
	// Inputs holds the inputs resources this task was invoked with
	// +listType=atomic
	Inputs []TaskResourceBinding `json:"inputs,omitempty"`
	// Outputs holds the inputs resources this task was invoked with
	// +listType=atomic
	Outputs []TaskResourceBinding `json:"outputs,omitempty"`
}

TaskRunResources allows a TaskRun to declare inputs and outputs TaskResourceBinding

func (*TaskRunResources) DeepCopy

func (in *TaskRunResources) DeepCopy() *TaskRunResources

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskRunResources.

func (*TaskRunResources) DeepCopyInto

func (in *TaskRunResources) DeepCopyInto(out *TaskRunResources)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TaskRunResources) Validate

func (tr *TaskRunResources) Validate(ctx context.Context) *apis.FieldError

Validate implements apis.Validatable

type TaskRunResult

type TaskRunResult struct {
	// Name the given name
	Name string `json:"name"`

	// Type is the user-specified type of the result. The possible type
	// is currently "string" and will support "array" in following work.
	// +optional
	Type ResultsType `json:"type,omitempty"`

	// Value the given value of the result
	Value ResultValue `json:"value"`
}

TaskRunResult used to describe the results of a task

func (*TaskRunResult) DeepCopy

func (in *TaskRunResult) DeepCopy() *TaskRunResult

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskRunResult.

func (*TaskRunResult) DeepCopyInto

func (in *TaskRunResult) DeepCopyInto(out *TaskRunResult)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TaskRunSidecarOverride added in v0.33.0

type TaskRunSidecarOverride struct {
	// The name of the Sidecar to override.
	Name string `json:"name"`
	// The resource requirements to apply to the Sidecar.
	Resources corev1.ResourceRequirements `json:"resources"`
}

TaskRunSidecarOverride is used to override the values of a Sidecar in the corresponding Task.

func (*TaskRunSidecarOverride) DeepCopy added in v0.33.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskRunSidecarOverride.

func (*TaskRunSidecarOverride) DeepCopyInto added in v0.33.0

func (in *TaskRunSidecarOverride) DeepCopyInto(out *TaskRunSidecarOverride)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TaskRunSpec

type TaskRunSpec struct {
	// +optional
	Debug *TaskRunDebug `json:"debug,omitempty"`
	// +optional
	// +listType=atomic
	Params []Param `json:"params,omitempty"`
	// +optional
	Resources *TaskRunResources `json:"resources,omitempty"`
	// +optional
	ServiceAccountName string `json:"serviceAccountName"`
	// no more than one of the TaskRef and TaskSpec may be specified.
	// +optional
	TaskRef *TaskRef `json:"taskRef,omitempty"`
	// +optional
	TaskSpec *TaskSpec `json:"taskSpec,omitempty"`
	// Used for cancelling a taskrun (and maybe more later on)
	// +optional
	Status TaskRunSpecStatus `json:"status,omitempty"`
	// Status message for cancellation.
	// +optional
	StatusMessage TaskRunSpecStatusMessage `json:"statusMessage,omitempty"`
	// Time after which the build times out. Defaults to 1 hour.
	// Specified build timeout should be less than 24h.
	// Refer Go's ParseDuration documentation for expected format: https://golang.org/pkg/time/#ParseDuration
	// +optional
	Timeout *metav1.Duration `json:"timeout,omitempty"`
	// PodTemplate holds pod specific configuration
	PodTemplate *pod.PodTemplate `json:"podTemplate,omitempty"`
	// Workspaces is a list of WorkspaceBindings from volumes to workspaces.
	// +optional
	// +listType=atomic
	Workspaces []WorkspaceBinding `json:"workspaces,omitempty"`
	// Overrides to apply to Steps in this TaskRun.
	// If a field is specified in both a Step and a StepOverride,
	// the value from the StepOverride will be used.
	// This field is only supported when the alpha feature gate is enabled.
	// +optional
	// +listType=atomic
	StepOverrides []TaskRunStepOverride `json:"stepOverrides,omitempty"`
	// Overrides to apply to Sidecars in this TaskRun.
	// If a field is specified in both a Sidecar and a SidecarOverride,
	// the value from the SidecarOverride will be used.
	// This field is only supported when the alpha feature gate is enabled.
	// +optional
	// +listType=atomic
	SidecarOverrides []TaskRunSidecarOverride `json:"sidecarOverrides,omitempty"`
	// Compute resources to use for this TaskRun
	ComputeResources *corev1.ResourceRequirements `json:"computeResources,omitempty"`
}

TaskRunSpec defines the desired state of TaskRun

func (*TaskRunSpec) ConvertFrom added in v0.40.0

func (trs *TaskRunSpec) ConvertFrom(ctx context.Context, source *v1.TaskRunSpec) error

ConvertFrom implements apis.Convertible

func (*TaskRunSpec) ConvertTo added in v0.40.0

func (trs *TaskRunSpec) ConvertTo(ctx context.Context, sink *v1.TaskRunSpec) error

ConvertTo implements apis.Convertible

func (*TaskRunSpec) DeepCopy

func (in *TaskRunSpec) DeepCopy() *TaskRunSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskRunSpec.

func (*TaskRunSpec) DeepCopyInto

func (in *TaskRunSpec) DeepCopyInto(out *TaskRunSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TaskRunSpec) SetDefaults

func (trs *TaskRunSpec) SetDefaults(ctx context.Context)

SetDefaults implements apis.Defaultable

func (*TaskRunSpec) Validate

func (ts *TaskRunSpec) Validate(ctx context.Context) (errs *apis.FieldError)

Validate taskrun spec

type TaskRunSpecStatus

type TaskRunSpecStatus string

TaskRunSpecStatus defines the taskrun spec status the user can provide

type TaskRunSpecStatusMessage added in v0.39.0

type TaskRunSpecStatusMessage string

TaskRunSpecStatusMessage defines human readable status messages for the TaskRun.

const (
	// TaskRunCancelledByPipelineMsg indicates that the PipelineRun of which this
	// TaskRun was a part of has been cancelled.
	TaskRunCancelledByPipelineMsg TaskRunSpecStatusMessage = "TaskRun cancelled as the PipelineRun it belongs to has been cancelled."
	// TaskRunCancelledByPipelineTimeoutMsg indicates that the TaskRun was cancelled because the PipelineRun running it timed out.
	TaskRunCancelledByPipelineTimeoutMsg TaskRunSpecStatusMessage = "TaskRun cancelled as the PipelineRun it belongs to has timed out."
)

type TaskRunStatus

type TaskRunStatus struct {
	duckv1beta1.Status `json:",inline"`

	// TaskRunStatusFields inlines the status fields.
	TaskRunStatusFields `json:",inline"`
}

TaskRunStatus defines the observed state of TaskRun

func (*TaskRunStatus) DeepCopy

func (in *TaskRunStatus) DeepCopy() *TaskRunStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskRunStatus.

func (*TaskRunStatus) DeepCopyInto

func (in *TaskRunStatus) DeepCopyInto(out *TaskRunStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TaskRunStatus) GetCondition

func (trs *TaskRunStatus) GetCondition(t apis.ConditionType) *apis.Condition

GetCondition returns the Condition matching the given type.

func (*TaskRunStatus) GetRunningReason added in v0.14.0

func (trs *TaskRunStatus) GetRunningReason() string

GetRunningReason returns the reason set to the "Succeeded" condition when the TaskRun starts running. This is used indicate that the resource could be validated is starting to perform its job.

func (*TaskRunStatus) GetStartedReason added in v0.14.0

func (trs *TaskRunStatus) GetStartedReason() string

GetStartedReason returns the reason set to the "Succeeded" condition when InitializeConditions is invoked

func (*TaskRunStatus) InitializeConditions

func (trs *TaskRunStatus) InitializeConditions()

InitializeConditions will set all conditions in taskRunCondSet to unknown for the TaskRun and set the started time to the current time

func (*TaskRunStatus) MarkResourceFailed added in v0.12.0

func (trs *TaskRunStatus) MarkResourceFailed(reason TaskRunReason, err error)

MarkResourceFailed sets the ConditionSucceeded condition to ConditionFalse based on an error that occurred and a reason

func (*TaskRunStatus) MarkResourceOngoing added in v0.18.0

func (trs *TaskRunStatus) MarkResourceOngoing(reason TaskRunReason, message string)

MarkResourceOngoing sets the ConditionSucceeded condition to ConditionUnknown with the reason and message.

func (*TaskRunStatus) SetCondition

func (trs *TaskRunStatus) SetCondition(newCond *apis.Condition)

SetCondition sets the condition, unsetting previous conditions with the same type as necessary.

type TaskRunStatusFields

type TaskRunStatusFields struct {
	// PodName is the name of the pod responsible for executing this task's steps.
	PodName string `json:"podName"`

	// StartTime is the time the build is actually started.
	// +optional
	StartTime *metav1.Time `json:"startTime,omitempty"`

	// CompletionTime is the time the build completed.
	// +optional
	CompletionTime *metav1.Time `json:"completionTime,omitempty"`

	// Steps describes the state of each build step container.
	// +optional
	// +listType=atomic
	Steps []StepState `json:"steps,omitempty"`

	// CloudEvents describe the state of each cloud event requested via a
	// CloudEventResource.
	// +optional
	// +listType=atomic
	CloudEvents []CloudEventDelivery `json:"cloudEvents,omitempty"`

	// RetriesStatus contains the history of TaskRunStatus in case of a retry in order to keep record of failures.
	// All TaskRunStatus stored in RetriesStatus will have no date within the RetriesStatus as is redundant.
	// +optional
	// +listType=atomic
	RetriesStatus []TaskRunStatus `json:"retriesStatus,omitempty"`

	// Results from Resources built during the taskRun. currently includes
	// the digest of build container images
	// +optional
	// +listType=atomic
	ResourcesResult []PipelineResourceResult `json:"resourcesResult,omitempty"`

	// TaskRunResults are the list of results written out by the task's containers
	// +optional
	// +listType=atomic
	TaskRunResults []TaskRunResult `json:"taskResults,omitempty"`

	// The list has one entry per sidecar in the manifest. Each entry is
	// represents the imageid of the corresponding sidecar.
	// +listType=atomic
	Sidecars []SidecarState `json:"sidecars,omitempty"`

	// TaskSpec contains the Spec from the dereferenced Task definition used to instantiate this TaskRun.
	TaskSpec *TaskSpec `json:"taskSpec,omitempty"`
}

TaskRunStatusFields holds the fields of TaskRun's status. This is defined separately and inlined so that other types can readily consume these fields via duck typing.

func (*TaskRunStatusFields) DeepCopy

func (in *TaskRunStatusFields) DeepCopy() *TaskRunStatusFields

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskRunStatusFields.

func (*TaskRunStatusFields) DeepCopyInto

func (in *TaskRunStatusFields) DeepCopyInto(out *TaskRunStatusFields)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TaskRunStepOverride added in v0.33.0

type TaskRunStepOverride struct {
	// The name of the Step to override.
	Name string `json:"name"`
	// The resource requirements to apply to the Step.
	Resources corev1.ResourceRequirements `json:"resources"`
}

TaskRunStepOverride is used to override the values of a Step in the corresponding Task.

func (*TaskRunStepOverride) DeepCopy added in v0.33.0

func (in *TaskRunStepOverride) DeepCopy() *TaskRunStepOverride

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskRunStepOverride.

func (*TaskRunStepOverride) DeepCopyInto added in v0.33.0

func (in *TaskRunStepOverride) DeepCopyInto(out *TaskRunStepOverride)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TaskSpec

type TaskSpec struct {
	// Resources is a list input and output resource to run the task
	// Resources are represented in TaskRuns as bindings to instances of
	// PipelineResources.
	// +optional
	Resources *TaskResources `json:"resources,omitempty"`

	// Params is a list of input parameters required to run the task. Params
	// must be supplied as inputs in TaskRuns unless they declare a default
	// value.
	// +optional
	// +listType=atomic
	Params []ParamSpec `json:"params,omitempty"`

	// Description is a user-facing description of the task that may be
	// used to populate a UI.
	// +optional
	Description string `json:"description,omitempty"`

	// Steps are the steps of the build; each step is run sequentially with the
	// source mounted into /workspace.
	// +listType=atomic
	Steps []Step `json:"steps,omitempty"`

	// Volumes is a collection of volumes that are available to mount into the
	// steps of the build.
	// +listType=atomic
	Volumes []corev1.Volume `json:"volumes,omitempty"`

	// StepTemplate can be used as the basis for all step containers within the
	// Task, so that the steps inherit settings on the base container.
	StepTemplate *StepTemplate `json:"stepTemplate,omitempty"`

	// Sidecars are run alongside the Task's step containers. They begin before
	// the steps start and end after the steps complete.
	// +listType=atomic
	Sidecars []Sidecar `json:"sidecars,omitempty"`

	// Workspaces are the volumes that this Task requires.
	// +listType=atomic
	Workspaces []WorkspaceDeclaration `json:"workspaces,omitempty"`

	// Results are values that this Task can output
	// +listType=atomic
	Results []TaskResult `json:"results,omitempty"`
}

TaskSpec defines the desired state of Task.

func (*TaskSpec) ConvertFrom added in v0.39.0

func (ts *TaskSpec) ConvertFrom(ctx context.Context, source *v1.TaskSpec) error

ConvertFrom implements apis.Convertible

func (*TaskSpec) ConvertTo added in v0.39.0

func (ts *TaskSpec) ConvertTo(ctx context.Context, sink *v1.TaskSpec) error

ConvertTo implements apis.Convertible

func (*TaskSpec) DeepCopy

func (in *TaskSpec) DeepCopy() *TaskSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskSpec.

func (*TaskSpec) DeepCopyInto

func (in *TaskSpec) DeepCopyInto(out *TaskSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TaskSpec) SetDefaults

func (ts *TaskSpec) SetDefaults(ctx context.Context)

SetDefaults set any defaults for the task spec

func (*TaskSpec) Validate

func (ts *TaskSpec) Validate(ctx context.Context) (errs *apis.FieldError)

Validate implements apis.Validatable

type TimeoutFields added in v0.25.0

type TimeoutFields struct {
	// Pipeline sets the maximum allowed duration for execution of the entire pipeline. The sum of individual timeouts for tasks and finally must not exceed this value.
	Pipeline *metav1.Duration `json:"pipeline,omitempty"`
	// Tasks sets the maximum allowed duration of this pipeline's tasks
	Tasks *metav1.Duration `json:"tasks,omitempty"`
	// Finally sets the maximum allowed duration of this pipeline's finally
	Finally *metav1.Duration `json:"finally,omitempty"`
}

TimeoutFields allows granular specification of pipeline, task, and finally timeouts

func (*TimeoutFields) DeepCopy added in v0.25.0

func (in *TimeoutFields) DeepCopy() *TimeoutFields

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TimeoutFields.

func (*TimeoutFields) DeepCopyInto added in v0.25.0

func (in *TimeoutFields) DeepCopyInto(out *TimeoutFields)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WhenExpression added in v0.16.0

type WhenExpression struct {
	// Input is the string for guard checking which can be a static input or an output from a parent Task
	Input string `json:"input"`

	// Operator that represents an Input's relationship to the values
	Operator selection.Operator `json:"operator"`

	// Values is an array of strings, which is compared against the input, for guard checking
	// It must be non-empty
	// +listType=atomic
	Values []string `json:"values"`
}

WhenExpression allows a PipelineTask to declare expressions to be evaluated before the Task is run to determine whether the Task should be executed or skipped

func (*WhenExpression) DeepCopy added in v0.16.0

func (in *WhenExpression) DeepCopy() *WhenExpression

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WhenExpression.

func (*WhenExpression) DeepCopyInto added in v0.16.0

func (in *WhenExpression) DeepCopyInto(out *WhenExpression)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*WhenExpression) GetVarSubstitutionExpressions added in v0.16.0

func (we *WhenExpression) GetVarSubstitutionExpressions() ([]string, bool)

GetVarSubstitutionExpressions extracts all the values between "$(" and ")" in a When Expression

type WhenExpressions added in v0.16.0

type WhenExpressions []WhenExpression

WhenExpressions are used to specify whether a Task should be executed or skipped All of them need to evaluate to True for a guarded Task to be executed.

func (WhenExpressions) AllowsExecution added in v0.16.0

func (wes WhenExpressions) AllowsExecution() bool

AllowsExecution evaluates an Input's relationship to an array of Values, based on the Operator, to determine whether all the When Expressions are True. If they are all True, the guarded Task is executed, otherwise it is skipped.

func (WhenExpressions) DeepCopy added in v0.16.0

func (in WhenExpressions) DeepCopy() WhenExpressions

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WhenExpressions.

func (WhenExpressions) DeepCopyInto added in v0.16.0

func (in WhenExpressions) DeepCopyInto(out *WhenExpressions)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (WhenExpressions) ReplaceWhenExpressionsVariables added in v0.16.0

func (wes WhenExpressions) ReplaceWhenExpressionsVariables(replacements map[string]string, arrayReplacements map[string][]string) WhenExpressions

ReplaceWhenExpressionsVariables interpolates variables, such as Parameters and Results, in the Input and Values.

type WorkspaceBinding

type WorkspaceBinding struct {
	// Name is the name of the workspace populated by the volume.
	Name string `json:"name"`
	// SubPath is optionally a directory on the volume which should be used
	// for this binding (i.e. the volume will be mounted at this sub directory).
	// +optional
	SubPath string `json:"subPath,omitempty"`
	// VolumeClaimTemplate is a template for a claim that will be created in the same namespace.
	// The PipelineRun controller is responsible for creating a unique claim for each instance of PipelineRun.
	// +optional
	VolumeClaimTemplate *corev1.PersistentVolumeClaim `json:"volumeClaimTemplate,omitempty"`
	// PersistentVolumeClaimVolumeSource represents a reference to a
	// PersistentVolumeClaim in the same namespace. Either this OR EmptyDir can be used.
	// +optional
	PersistentVolumeClaim *corev1.PersistentVolumeClaimVolumeSource `json:"persistentVolumeClaim,omitempty"`
	// EmptyDir represents a temporary directory that shares a Task's lifetime.
	// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
	// Either this OR PersistentVolumeClaim can be used.
	// +optional
	EmptyDir *corev1.EmptyDirVolumeSource `json:"emptyDir,omitempty"`
	// ConfigMap represents a configMap that should populate this workspace.
	// +optional
	ConfigMap *corev1.ConfigMapVolumeSource `json:"configMap,omitempty"`
	// Secret represents a secret that should populate this workspace.
	// +optional
	Secret *corev1.SecretVolumeSource `json:"secret,omitempty"`
	// Projected represents a projected volume that should populate this workspace.
	// +optional
	Projected *corev1.ProjectedVolumeSource `json:"projected,omitempty"`
	// CSI (Container Storage Interface) represents ephemeral storage that is handled by certain external CSI drivers.
	// +optional
	CSI *corev1.CSIVolumeSource `json:"csi,omitempty"`
}

WorkspaceBinding maps a Task's declared workspace to a Volume.

func (*WorkspaceBinding) DeepCopy

func (in *WorkspaceBinding) DeepCopy() *WorkspaceBinding

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceBinding.

func (*WorkspaceBinding) DeepCopyInto

func (in *WorkspaceBinding) DeepCopyInto(out *WorkspaceBinding)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*WorkspaceBinding) Validate

func (b *WorkspaceBinding) Validate(ctx context.Context) (errs *apis.FieldError)

Validate looks at the Volume provided in wb and makes sure that it is valid. This means that only one VolumeSource can be specified, and also that the supported VolumeSource is itself valid.

type WorkspaceDeclaration

type WorkspaceDeclaration struct {
	// Name is the name by which you can bind the volume at runtime.
	Name string `json:"name"`
	// Description is an optional human readable description of this volume.
	// +optional
	Description string `json:"description,omitempty"`
	// MountPath overrides the directory that the volume will be made available at.
	// +optional
	MountPath string `json:"mountPath,omitempty"`
	// ReadOnly dictates whether a mounted volume is writable. By default this
	// field is false and so mounted volumes are writable.
	ReadOnly bool `json:"readOnly,omitempty"`
	// Optional marks a Workspace as not being required in TaskRuns. By default
	// this field is false and so declared workspaces are required.
	Optional bool `json:"optional,omitempty"`
}

WorkspaceDeclaration is a declaration of a volume that a Task requires.

func (*WorkspaceDeclaration) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceDeclaration.

func (*WorkspaceDeclaration) DeepCopyInto

func (in *WorkspaceDeclaration) DeepCopyInto(out *WorkspaceDeclaration)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*WorkspaceDeclaration) GetMountPath

func (w *WorkspaceDeclaration) GetMountPath() string

GetMountPath returns the mountPath for w which is the MountPath if provided or the default if not.

type WorkspacePipelineDeclaration

type WorkspacePipelineDeclaration = PipelineWorkspaceDeclaration

WorkspacePipelineDeclaration creates a named slot in a Pipeline that a PipelineRun is expected to populate with a workspace binding. Deprecated: use PipelineWorkspaceDeclaration type instead

type WorkspacePipelineTaskBinding

type WorkspacePipelineTaskBinding struct {
	// Name is the name of the workspace as declared by the task
	Name string `json:"name"`
	// Workspace is the name of the workspace declared by the pipeline
	// +optional
	Workspace string `json:"workspace,omitempty"`
	// SubPath is optionally a directory on the volume which should be used
	// for this binding (i.e. the volume will be mounted at this sub directory).
	// +optional
	SubPath string `json:"subPath,omitempty"`
}

WorkspacePipelineTaskBinding describes how a workspace passed into the pipeline should be mapped to a task's declared workspace.

func (*WorkspacePipelineTaskBinding) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspacePipelineTaskBinding.

func (*WorkspacePipelineTaskBinding) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WorkspaceUsage added in v0.24.0

type WorkspaceUsage struct {
	// Name is the name of the workspace this Step or Sidecar wants access to.
	Name string `json:"name"`
	// MountPath is the path that the workspace should be mounted to inside the Step or Sidecar,
	// overriding any MountPath specified in the Task's WorkspaceDeclaration.
	MountPath string `json:"mountPath"`
}

WorkspaceUsage is used by a Step or Sidecar to declare that it wants isolated access to a Workspace defined in a Task.

func (*WorkspaceUsage) DeepCopy added in v0.24.0

func (in *WorkspaceUsage) DeepCopy() *WorkspaceUsage

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceUsage.

func (*WorkspaceUsage) DeepCopyInto added in v0.24.0

func (in *WorkspaceUsage) DeepCopyInto(out *WorkspaceUsage)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL