builder

package
v0.12.0 Latest Latest
Warning

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

Go to latest
Published: Apr 29, 2020 License: Apache-2.0 Imports: 9 Imported by: 0

README

Builder package for tests

This package holds Builder functions that can be used to create struct in tests with less noise.

One of the most important characteristic of a unit test (and any type of test really) is readability. This means it should be easy to read but most importantly it should clearly show the intent of the test. The setup (and cleanup) of the tests should be as small as possible to avoid the noise. Those builders exists to help with that.

There is two types of functions defined in that package :

* *Builders*: create and return a struct
* *Modifiers*: return a function
  that will operate on a given struct. They can be applied to other
  Modifiers or Builders.

Most of the Builder (and Modifier) that accepts Modifiers defines a type (TypeOp) that can be satisfied by existing function in this package, from other package or inline. An example would be the following.

    // Definition
    type TaskRunOp func(*v1alpha1.TaskRun)
    func TaskRun(name, namespace string, ops ...TaskRunOp) *v1alpha1.TaskRun {
        // […]
    }
    func TaskRunOwnerReference(kind, name string) TaskRunOp {
        return func(t *v1alpha1.TaskRun) {
            // […]
        }
    }
    // Usage
    t := TaskRun("foo", "bar", func(t *v1alpha1.TaskRun){
        // Do something with the Task struct
        // […]
    })

The main reason to define the Op type, and using it in the methods signatures is to group Modifier function together. It makes it easier to see what is a Modifier (or Builder) and on what it operates.

By convention, this package is import with the "tb" as alias. The examples make that assumption.

Example

Let's look at a non-exhaustive example.

package builder_test

import (
    "fmt"
    "testing"

    "github.com/tektoncd/pipeline/pkg/apis/pipeline/v1alpha1"
    tb "github.com/tektoncd/pipeline/test/builder"
    corev1 "k8s.io/api/core/v1"
)

func MyTest(t *testing.T) {
    // You can declare re-usable modifiers
    myStep := tb.Step("my-step", "myimage")
    // … and use them in a Task definition
    myTask := tb.Task("my-task", "namespace", tb.TaskSpec(
        tb.Step("simple-step", "myotherimage", tb.Command("/mycmd")),
        myStep,
    ))
    // … and another one.
    myOtherTask := tb.Task("my-other-task", "namespace",
        tb.TaskSpec(myStep,
            tb.TaskInputs(tb.InputsResource("workspace", v1alpha1.PipelineResourceTypeGit)),
        ),
    )
    myClusterTask := tb.ClusterTask("my-task", tb.ClusterTaskSpec(
        tb.Step("simple-step", "myotherimage", tb.Command("/mycmd")),
    ))
    // A simple definition, with a Task reference
    myTaskRun := tb.TaskRun("my-taskrun", "namespace", tb.TaskRunSpec(
        tb.TaskRunTaskRef("my-task"),
    ))
    // … or a more complex one with inline TaskSpec
    myTaskRunWithSpec := tb.TaskRun("my-taskrun-with-spec", "namespace", tb.TaskRunSpec(
        tb.TaskRunInputs(
            tb.TaskRunInputsParam("myarg", "foo"),
            tb.TaskRunInputsResource("workspace", tb.TaskResourceBindingRef("git-resource")),
        ),
        tb.TaskRunTaskSpec(
            tb.TaskInputs(
                tb.InputsResource("workspace", v1alpha1.PipelineResourceTypeGit),
                tb.InputsParam("myarg", tb.ParamDefault("mydefault")),
            ),
            tb.Step("mycontainer", "myimage", tb.Command("/mycmd"),
                tb.Args("--my-arg=$(inputs.params.myarg)"),
            ),
        ),
    ))
    // Pipeline
    pipeline := tb.Pipeline("tomatoes", "namespace",
        tb.PipelineSpec(tb.PipelineTask("foo", "banana")),
    )
    // … and PipelineRun
    pipelineRun := tb.PipelineRun("pear", "namespace",
        tb.PipelineRunSpec("tomatoes", tb.PipelineRunServiceAccount("inexistent")),
    )
    // And do something with them
    // […]
    if _, err := c.PipelineClient.Create(pipeline); err != nil {
        t.Fatalf("Failed to create Pipeline `%s`: %s", "tomatoes", err)
    }
    if _, err := c.PipelineRunClient.Create(pipelineRun); err != nil {
        t.Fatalf("Failed to create PipelineRun `%s`: %s", "pear", err)
    }
    // […]
}

Documentation

Overview

Package builder holds Builder functions that can be used to create struct in tests with less noise.

One of the most important characteristic of a unit test (and any type of test really) is readability. This means it should be easy to read but most importantly it should clearly show the intent of the test. The setup (and cleanup) of the tests should be as small as possible to avoid the noise. Those builders exists to help with that.

There is two types of functions defined in that package :

  • Builders: create and return a struct
  • Modifiers: return a function that will operate on a given struct. They can be applied to other Modifiers or Builders.

Most of the Builder (and Modifier) that accepts Modifiers defines a type (`TypeOp`) that can be satisfied by existing function in this package, from other package *or* inline. An example would be the following.

// Definition
type TaskOp func(*v1alpha1.Task)
func Task(name string, ops ...TaskOp) *v1alpha1.Task {
	// […]
}
func TaskNamespace(namespace string) TaskOp {
	return func(t *v1alpha1.Task) {
		// […]
	}
}
// Usage
t := Task("foo", TaskNamespace("bar"), func(t *v1alpha1.Task){
	// Do something with the Task struct
	// […]
})

The main reason to define the `Op` type, and using it in the methods signatures is to group Modifier function together. It makes it easier to see what is a Modifier (or Builder) and on what it operates.

By convention, this package is import with the "tb" as alias. The examples make that assumption.

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

func ArrayOrString added in v0.6.0

func ArrayOrString(value string, additionalValues ...string) *v1alpha1.ArrayOrString

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

func BlockOwnerDeletion

func BlockOwnerDeletion(o *metav1.OwnerReference)

func ClusterTask

func ClusterTask(name string, ops ...ClusterTaskOp) *v1alpha1.ClusterTask

ClusterTask creates a ClusterTask with default values. Any number of ClusterTask modifier can be passed to transform it.

Example
package main

import (
	"testing"

	"github.com/google/go-cmp/cmp"
	"github.com/tektoncd/pipeline/pkg/apis/pipeline/v1alpha1"

	tb "github.com/tektoncd/pipeline/test/builder"
)

// This is a "hack" to make the example "look" like tests
var t *testing.T

func main() {
	myClusterTask := tb.ClusterTask("my-task", tb.ClusterTaskSpec(
		tb.Step("myotherimage", tb.StepCommand("/mycmd")),
	))
	expectedClusterTask := &v1alpha1.Task{
		// […]
	}
	// […]
	if d := cmp.Diff(expectedClusterTask, myClusterTask); d != "" {
		t.Fatalf("ClusterTask diff -want, +got: %v", d)
	}
}
Output:

func Condition

func Condition(name string, ops ...ConditionOp) *v1alpha1.Condition

Condition creates a Condition with default values. Any number of Condition modifiers can be passed to transform it.

func Controller

func Controller(o *metav1.OwnerReference)

func Pipeline

func Pipeline(name string, ops ...PipelineOp) *v1alpha1.Pipeline

Pipeline creates a Pipeline with default values. Any number of Pipeline modifier can be passed to transform it.

Example
package main

import (
	"testing"

	"github.com/google/go-cmp/cmp"
	"github.com/tektoncd/pipeline/pkg/apis/pipeline/v1alpha1"

	tb "github.com/tektoncd/pipeline/test/builder"
)

// This is a "hack" to make the example "look" like tests
var t *testing.T

func main() {
	pipeline := tb.Pipeline("tomatoes",
		tb.PipelineSpec(tb.PipelineTask("foo", "banana")),
	)
	expectedPipeline := &v1alpha1.Pipeline{
		// […]
	}
	// […]
	if d := cmp.Diff(expectedPipeline, pipeline); d != "" {
		t.Fatalf("Task diff -want, +got: %v", d)
	}
}
Output:

func PipelineResource

func PipelineResource(name string, ops ...PipelineResourceOp) *v1alpha1.PipelineResource

PipelineResource creates a PipelineResource with default values. Any number of PipelineResource modifier can be passed to transform it.

Example
package main

import (
	"testing"

	"github.com/google/go-cmp/cmp"
	"github.com/tektoncd/pipeline/pkg/apis/pipeline/v1alpha1"

	tb "github.com/tektoncd/pipeline/test/builder"
)

// This is a "hack" to make the example "look" like tests
var t *testing.T

func main() {
	gitResource := tb.PipelineResource("git-resource", tb.PipelineResourceSpec(
		v1alpha1.PipelineResourceTypeGit, tb.PipelineResourceSpecParam("URL", "https://foo.git"),
	))
	imageResource := tb.PipelineResource("image-resource", tb.PipelineResourceSpec(
		v1alpha1.PipelineResourceTypeImage, tb.PipelineResourceSpecParam("URL", "gcr.io/kristoff/sven"),
	))
	expectedGitResource := v1alpha1.PipelineResource{
		// […]
	}
	expectedImageResource := v1alpha1.PipelineResource{
		// […]
	}
	// […]
	if d := cmp.Diff(expectedGitResource, gitResource); d != "" {
		t.Fatalf("Task diff -want, +got: %v", d)
	}
	if d := cmp.Diff(expectedImageResource, imageResource); d != "" {
		t.Fatalf("Task diff -want, +got: %v", d)
	}
}
Output:

func PipelineRun

func PipelineRun(name string, ops ...PipelineRunOp) *v1alpha1.PipelineRun

PipelineRun creates a PipelineRun with default values. Any number of PipelineRun modifier can be passed to transform it.

Example
package main

import (
	"testing"

	"github.com/google/go-cmp/cmp"
	"github.com/tektoncd/pipeline/pkg/apis/pipeline/v1alpha1"

	tb "github.com/tektoncd/pipeline/test/builder"
)

// This is a "hack" to make the example "look" like tests
var t *testing.T

func main() {
	pipelineRun := tb.PipelineRun("pear",
		tb.PipelineRunSpec("tomatoes", tb.PipelineRunServiceAccountName("inexistent")),
	)
	expectedPipelineRun := &v1alpha1.PipelineRun{
		// […]
	}
	// […]
	if d := cmp.Diff(expectedPipelineRun, pipelineRun); d != "" {
		t.Fatalf("Task diff -want, +got: %v", d)
	}
}
Output:

func PipelineRunCancelled

func PipelineRunCancelled(spec *v1alpha1.PipelineRunSpec)

PipelineRunCancelled sets the status to cancel to the TaskRunSpec.

func PipelineRunNilTimeout added in v0.5.2

func PipelineRunNilTimeout(prs *v1alpha1.PipelineRunSpec)

PipelineRunNilTimeout sets the timeout to nil on the PipelineRunSpec

func Pod

func Pod(name string, ops ...PodOp) *corev1.Pod

Pod creates a Pod with default values. Any number of Pod modifiers can be passed to transform it.

func ResolvedTaskResources

func ResolvedTaskResources(ops ...ResolvedTaskResourcesOp) *resources.ResolvedTaskResources

ResolvedTaskResources creates a ResolvedTaskResources with default values. Any number of ResolvedTaskResources modifier can be passed to transform it.

func Task

func Task(name string, ops ...TaskOp) *v1alpha1.Task

Task creates a Task with default values. Any number of Task modifier can be passed to transform it.

Example
package main

import (
	"testing"

	"github.com/google/go-cmp/cmp"
	"github.com/tektoncd/pipeline/pkg/apis/pipeline/v1alpha1"

	tb "github.com/tektoncd/pipeline/test/builder"
)

// This is a "hack" to make the example "look" like tests
var t *testing.T

func main() {
	// You can declare re-usable modifiers
	myStep := tb.Step("myimage")
	// … and use them in a Task definition
	myTask := tb.Task("my-task", tb.TaskSpec(
		tb.Step("myotherimage", tb.StepCommand("/mycmd")),
		myStep,
	))
	// … and another one.
	myOtherTask := tb.Task("my-other-task",
		tb.TaskSpec(myStep,
			tb.TaskInputs(tb.InputsResource("workspace", v1alpha1.PipelineResourceTypeGit)),
		),
	)
	expectedTask := &v1alpha1.Task{
		// […]
	}
	expectedOtherTask := &v1alpha1.Task{
		// […]
	}
	// […]
	if d := cmp.Diff(expectedTask, myTask); d != "" {
		t.Fatalf("Task diff -want, +got: %v", d)
	}
	if d := cmp.Diff(expectedOtherTask, myOtherTask); d != "" {
		t.Fatalf("Task diff -want, +got: %v", d)
	}
}
Output:

func TaskRun

func TaskRun(name string, ops ...TaskRunOp) *v1alpha1.TaskRun

TaskRun creates a TaskRun with default values. Any number of TaskRun modifier can be passed to transform it.

Example
package main

import (
	"testing"

	"github.com/google/go-cmp/cmp"
	"github.com/tektoncd/pipeline/pkg/apis/pipeline/v1alpha1"

	tb "github.com/tektoncd/pipeline/test/builder"
)

// This is a "hack" to make the example "look" like tests
var t *testing.T

func main() {
	// A simple definition, with a Task reference
	myTaskRun := tb.TaskRun("my-taskrun", tb.TaskRunSpec(
		tb.TaskRunTaskRef("my-task"),
	))
	// … or a more complex one with inline TaskSpec
	myTaskRunWithSpec := tb.TaskRun("my-taskrun-with-spec", tb.TaskRunSpec(
		tb.TaskRunInputs(
			tb.TaskRunInputsParam("myarg", "foo"),
			tb.TaskRunInputsResource("workspace", tb.TaskResourceBindingRef("git-resource")),
		),
		tb.TaskRunTaskSpec(
			tb.TaskInputs(
				tb.InputsResource("workspace", v1alpha1.PipelineResourceTypeGit),
				tb.InputsParamSpec("myarg", v1alpha1.ParamTypeString, tb.ParamSpecDefault("mydefault")),
			),
			tb.Step("myimage", tb.StepCommand("/mycmd"),
				tb.StepArgs("--my-arg=$(inputs.params.myarg)"),
			),
		),
	))
	expectedTaskRun := &v1alpha1.TaskRun{
		// […]
	}
	expectedTaskRunWithSpec := &v1alpha1.TaskRun{
		// […]
	}
	// […]
	if d := cmp.Diff(expectedTaskRun, myTaskRun); d != "" {
		t.Fatalf("Task diff -want, +got: %v", d)
	}
	if d := cmp.Diff(expectedTaskRunWithSpec, myTaskRunWithSpec); d != "" {
		t.Fatalf("Task diff -want, +got: %v", d)
	}
}
Output:

func TaskRunCancelled

func TaskRunCancelled(spec *v1alpha1.TaskRunSpec)

TaskRunCancelled sets the status to cancel to the TaskRunSpec.

func TaskRunNilTimeout added in v0.5.2

func TaskRunNilTimeout(spec *v1alpha1.TaskRunSpec)

TaskRunNilTimeout sets the timeout duration to nil on the TaskRunSpec.

Types

type ClusterTaskOp

type ClusterTaskOp func(*v1alpha1.ClusterTask)

ClusterTaskOp is an operation which modify a ClusterTask struct.

func ClusterTaskSpec

func ClusterTaskSpec(ops ...TaskSpecOp) ClusterTaskOp

ClusterTaskSpec sets the specified spec of the cluster task. Any number of TaskSpec modifier can be passed to create it.

func ClusterTaskType added in v0.12.0

func ClusterTaskType() ClusterTaskOp

ClusterTaskType sets the TypeMeta on the ClusterTask which is useful for making it serializable/deserializable.

type ConditionOp added in v0.6.0

type ConditionOp func(*v1alpha1.Condition)

ConditionOp is an operation which modifies a Condition struct.

func ConditionLabels added in v0.10.0

func ConditionLabels(labels map[string]string) ConditionOp

func ConditionNamespace added in v0.12.0

func ConditionNamespace(namespace string) ConditionOp

Useful when tests need to specify the namespace

func ConditionSpec added in v0.6.0

func ConditionSpec(ops ...ConditionSpecOp) ConditionOp

ConditionSpec creates a ConditionSpec with default values. Any number of ConditionSpec modifiers can be passed to transform it.

type ConditionSpecOp added in v0.6.0

type ConditionSpecOp func(spec *v1alpha1.ConditionSpec)

ConditionSpecOp is an operation which modifies a ConditionSpec struct.

func ConditionDescription added in v0.11.0

func ConditionDescription(desc string) ConditionSpecOp

ConditionDescription sets the description of the condition

func ConditionParamSpec added in v0.6.0

func ConditionParamSpec(name string, pt v1alpha1.ParamType, ops ...ParamSpecOp) ConditionSpecOp

ConditionParamSpec adds a param, with specified name, to the Spec. Any number of ParamSpec modifiers can be passed to transform it.

func ConditionResource added in v0.7.0

func ConditionResource(name string, resourceType v1alpha1.PipelineResourceType) ConditionSpecOp

ConditionResource adds a resource with specified name, and type to the ConditionSpec.

func ConditionSpecCheck added in v0.6.0

func ConditionSpecCheck(name, image string, ops ...ContainerOp) ConditionSpecOp

ConditionSpecCheck adds a Container, with the specified name and image, to the Condition Spec Check. Any number of Container modifiers can be passed to transform it.

func ConditionSpecCheckScript added in v0.10.0

func ConditionSpecCheckScript(script string) ConditionSpecOp

type ContainerOp

type ContainerOp func(*corev1.Container)

ContainerOp is an operation which modifies a Container struct.

func Args

func Args(args ...string) ContainerOp

Args sets the command arguments to the Container (step in this case).

func Command

func Command(args ...string) ContainerOp

Command sets the command to the Container (step in this case).

func EnvVar

func EnvVar(name, value string) ContainerOp

EnvVar add an environment variable, with specified name and value, to the Container (step).

func Resources added in v0.3.0

func Resources(ops ...ResourceRequirementsOp) ContainerOp

Resources adds ResourceRequirements to the Container (step).

func TerminationMessagePath added in v0.5.0

func TerminationMessagePath(terminationMessagePath string) ContainerOp

TerminationMessagePath sets the termination message path.

func VolumeMount

func VolumeMount(name, mountPath string, ops ...VolumeMountOp) ContainerOp

VolumeMount add a VolumeMount to the Container (step).

func WorkingDir

func WorkingDir(workingDir string) ContainerOp

WorkingDir sets the WorkingDir on the Container.

type InputsOp

type InputsOp func(*v1alpha1.Inputs)

InputsOp is an operation which modify an Inputs struct.

func InputsParamSpec added in v0.6.0

func InputsParamSpec(name string, pt v1alpha1.ParamType, ops ...ParamSpecOp) InputsOp

InputsParamSpec adds a ParamSpec, with specified name and type, to the Inputs. Any number of TaskParamSpec modifier can be passed to transform it.

func InputsResource

func InputsResource(name string, resourceType v1alpha1.PipelineResourceType, ops ...TaskResourceOp) InputsOp

InputsResource adds a resource, with specified name and type, to the Inputs. Any number of TaskResource modifier can be passed to transform it.

type OutputsOp

type OutputsOp func(*v1alpha1.Outputs)

OutputsOp is an operation which modify an Outputs struct.

func OutputsResource

func OutputsResource(name string, resourceType v1alpha1.PipelineResourceType, ops ...TaskResourceOp) OutputsOp

OutputsResource adds a resource, with specified name and type, to the Outputs.

type OwnerReferenceOp

type OwnerReferenceOp func(*metav1.OwnerReference)

OwnerReferenceOp is an operation which modifies an OwnerReference struct.

func OwnerReferenceAPIVersion

func OwnerReferenceAPIVersion(version string) OwnerReferenceOp

OwnerReferenceAPIVersion sets the APIVersion to the OwnerReference.

type ParamSpecOp added in v0.6.0

type ParamSpecOp func(*v1alpha1.ParamSpec)

ParamSpecOp is an operation which modify a ParamSpec struct.

func ParamSpecDefault added in v0.6.0

func ParamSpecDefault(value string, additionalValues ...string) ParamSpecOp

ParamSpecDefault sets the default value of a ParamSpec.

func ParamSpecDescription added in v0.6.0

func ParamSpecDescription(desc string) ParamSpecOp

ParamSpecDescription sets the description of a ParamSpec.

type PipelineOp

type PipelineOp func(*v1alpha1.Pipeline)

PipelineOp is an operation which modify a Pipeline struct.

func PipelineCreationTimestamp added in v0.4.0

func PipelineCreationTimestamp(t time.Time) PipelineOp

PipelineCreationTimestamp sets the creation time of the pipeline

func PipelineNamespace added in v0.12.0

func PipelineNamespace(namespace string) PipelineOp

Useful when tests need to specify the namespace

func PipelineSpec

func PipelineSpec(ops ...PipelineSpecOp) PipelineOp

PipelineSpec sets the PipelineSpec to the Pipeline. Any number of PipelineSpec modifier can be passed to transform it.

type PipelineResourceBindingOp

type PipelineResourceBindingOp func(*v1alpha1.PipelineResourceBinding)

PipelineResourceBindingOp is an operation which modify a PipelineResourceBinding struct.

func PipelineResourceBindingRef

func PipelineResourceBindingRef(name string) PipelineResourceBindingOp

PipelineResourceBindingRef set the ResourceRef name to the Resource called Name.

func PipelineResourceBindingResourceSpec added in v0.8.0

func PipelineResourceBindingResourceSpec(spec *v1alpha1.PipelineResourceSpec) PipelineResourceBindingOp

PipelineResourceBindingResourceSpec set the PipelineResourceResourceSpec to the PipelineResourceBinding.

type PipelineResourceOp

type PipelineResourceOp func(*v1alpha1.PipelineResource)

PipelineResourceOp is an operation which modify a PipelineResource struct.

func PipelineResourceNamespace added in v0.12.0

func PipelineResourceNamespace(namespace string) PipelineResourceOp

Useful when tests need to specify the namespace

func PipelineResourceSpec

func PipelineResourceSpec(resourceType v1alpha1.PipelineResourceType, ops ...PipelineResourceSpecOp) PipelineResourceOp

PipelineResourceSpec set the PipelineResourceSpec, with specified type, to the PipelineResource. Any number of PipelineResourceSpec modifier can be passed to transform it.

type PipelineResourceSpecOp

type PipelineResourceSpecOp func(*v1alpha1.PipelineResourceSpec)

PipelineResourceSpecOp is an operation which modify a PipelineResourceSpec struct.

func PipelineResourceDescription added in v0.11.0

func PipelineResourceDescription(desc string) PipelineResourceSpecOp

PipelineResourceDescription sets the description of the pipeline resource

func PipelineResourceSpecParam

func PipelineResourceSpecParam(name, value string) PipelineResourceSpecOp

PipelineResourceSpecParam adds a ResourceParam, with specified name and value, to the PipelineResourceSpec.

func PipelineResourceSpecSecretParam

func PipelineResourceSpecSecretParam(fieldname, secretName, secretKey string) PipelineResourceSpecOp

PipelineResourceSpecSecretParam adds a SecretParam, with specified fieldname, secretKey and secretName, to the PipelineResourceSpec.

type PipelineRunOp

type PipelineRunOp func(*v1alpha1.PipelineRun)

PipelineRunOp is an operation which modify a PipelineRun struct.

func PipelineRunAnnotation added in v0.4.0

func PipelineRunAnnotation(key, value string) PipelineRunOp

PipelineRunAnnotations adds a annotation to the PipelineRun.

func PipelineRunLabel

func PipelineRunLabel(key, value string) PipelineRunOp

PipelineRunLabels adds a label to the PipelineRun.

func PipelineRunNamespace added in v0.12.0

func PipelineRunNamespace(namespace string) PipelineRunOp

Useful when tests need to specify the namespace

func PipelineRunSpec

func PipelineRunSpec(name string, ops ...PipelineRunSpecOp) PipelineRunOp

PipelineRunSpec sets the PipelineRunSpec, references Pipeline with specified name, to the PipelineRun. Any number of PipelineRunSpec modifier can be passed to transform it.

func PipelineRunStatus

func PipelineRunStatus(ops ...PipelineRunStatusOp) PipelineRunOp

PipelineRunStatus sets the PipelineRunStatus to the PipelineRun. Any number of PipelineRunStatus modifier can be passed to transform it.

type PipelineRunSpecOp

type PipelineRunSpecOp func(*v1alpha1.PipelineRunSpec)

PipelineRunSpecOp is an operation which modify a PipelineRunSpec struct.

func PipelineRunAffinity

func PipelineRunAffinity(affinity *corev1.Affinity) PipelineRunSpecOp

PipelineRunAffinity sets the affinity to the PipelineRunSpec.

func PipelineRunNodeSelector

func PipelineRunNodeSelector(values map[string]string) PipelineRunSpecOp

PipelineRunNodeSelector sets the Node selector to the PipelineRunSpec.

func PipelineRunParam

func PipelineRunParam(name string, value string, additionalValues ...string) PipelineRunSpecOp

PipelineRunParam add a param, with specified name and value, to the PipelineRunSpec.

func PipelineRunPipelineSpec added in v0.10.0

func PipelineRunPipelineSpec(ops ...PipelineSpecOp) PipelineRunSpecOp

PipelineRunPipelineSpec adds a PipelineSpec to the PipelineRunSpec. Any number of PipelineSpec modifiers can be passed to transform it.

func PipelineRunResourceBinding

func PipelineRunResourceBinding(name string, ops ...PipelineResourceBindingOp) PipelineRunSpecOp

PipelineRunResourceBinding adds bindings from actual instances to a Pipeline's declared resources.

func PipelineRunServiceAccountName added in v0.8.0

func PipelineRunServiceAccountName(sa string) PipelineRunSpecOp

PipelineRunServiceAccount sets the service account to the PipelineRunSpec.

func PipelineRunServiceAccountNameTask added in v0.8.0

func PipelineRunServiceAccountNameTask(taskName, sa string) PipelineRunSpecOp

PipelineRunServiceAccountTask configures the service account for given Task in PipelineRun.

func PipelineRunTimeout

func PipelineRunTimeout(duration time.Duration) PipelineRunSpecOp

PipelineRunTimeout sets the timeout to the PipelineRunSpec.

func PipelineRunTolerations added in v0.3.0

func PipelineRunTolerations(values []corev1.Toleration) PipelineRunSpecOp

PipelineRunTolerations sets the Node selector to the PipelineRunSpec.

func PipelineRunWorkspaceBindingEmptyDir added in v0.10.0

func PipelineRunWorkspaceBindingEmptyDir(name string) PipelineRunSpecOp

PipelineRunWorkspaceBindingEmptyDir adds an EmptyDir Workspace to the workspaces of a pipelinerun spec.

func PipelineRunWorkspaceBindingVolumeClaimTemplate added in v0.12.0

func PipelineRunWorkspaceBindingVolumeClaimTemplate(name string, claimName string, subPath string) PipelineRunSpecOp

PipelineRunWorkspaceBindingVolumeClaimTemplate adds an VolumeClaimTemplate Workspace to the workspaces of a pipelineRun spec.

type PipelineRunStatusOp

type PipelineRunStatusOp func(*v1alpha1.PipelineRunStatus)

PipelineRunStatusOp is an operation which modifies a PipelineRunStatus

func PipelineRunCompletionTime added in v0.4.0

func PipelineRunCompletionTime(t time.Time) PipelineRunStatusOp

PipelineRunCompletionTime sets the completion time to the PipelineRunStatus.

func PipelineRunResult added in v0.12.0

func PipelineRunResult(name, value string) PipelineRunStatusOp

func PipelineRunStartTime

func PipelineRunStartTime(startTime time.Time) PipelineRunStatusOp

PipelineRunStartTime sets the start time to the PipelineRunStatus.

func PipelineRunStatusCondition

func PipelineRunStatusCondition(condition apis.Condition) PipelineRunStatusOp

PipelineRunStatusCondition adds a StatusCondition to the TaskRunStatus.

func PipelineRunTaskRunsStatus added in v0.3.0

func PipelineRunTaskRunsStatus(taskRunName string, status *v1alpha1.PipelineRunTaskRunStatus) PipelineRunStatusOp

PipelineRunTaskRunsStatus sets the status of TaskRun to the PipelineRunStatus.

type PipelineSpecOp

type PipelineSpecOp func(*v1alpha1.PipelineSpec)

PipelineSpecOp is an operation which modify a PipelineSpec struct.

func PipelineDeclaredResource

func PipelineDeclaredResource(name string, t v1alpha1.PipelineResourceType) PipelineSpecOp

PipelineDeclaredResource adds a resource declaration to the Pipeline Spec, with the specified name and type.

func PipelineDescription added in v0.11.0

func PipelineDescription(desc string) PipelineSpecOp

PipelineDescription sets the description of the pipeline

func PipelineParamSpec added in v0.6.0

func PipelineParamSpec(name string, pt v1alpha1.ParamType, ops ...ParamSpecOp) PipelineSpecOp

PipelineParamSpec adds a param, with specified name and type, to the PipelineSpec. Any number of PipelineParamSpec modifiers can be passed to transform it.

func PipelineResult added in v0.12.0

func PipelineResult(name, value, description string, ops ...PipelineOp) PipelineSpecOp

func PipelineTask

func PipelineTask(name, taskName string, ops ...PipelineTaskOp) PipelineSpecOp

PipelineTask adds a PipelineTask, with specified name and task name, to the PipelineSpec. Any number of PipelineTask modifier can be passed to transform it.

func PipelineWorkspaceDeclaration added in v0.10.0

func PipelineWorkspaceDeclaration(names ...string) PipelineSpecOp

PipelineWorkspaceDeclaration adds a Workspace to the workspaces listed in the pipeline spec.

type PipelineTaskConditionOp added in v0.6.0

type PipelineTaskConditionOp func(condition *v1alpha1.PipelineTaskCondition)

PipelineTaskConditionOp is an operation which modifies a PipelineTaskCondition

func PipelineTaskConditionParam added in v0.6.0

func PipelineTaskConditionParam(name, val string) PipelineTaskConditionOp

PipelineTaskConditionParam adds a parameter to a PipelineTaskCondition

func PipelineTaskConditionResource added in v0.7.0

func PipelineTaskConditionResource(name, resource string, from ...string) PipelineTaskConditionOp

PipelineTaskConditionResource adds a resource to a PipelineTaskCondition

type PipelineTaskInputResourceOp

type PipelineTaskInputResourceOp func(*v1alpha1.PipelineTaskInputResource)

PipelineTaskInputResourceOp is an operation which modifies a PipelineTaskInputResource.

func From

func From(tasks ...string) PipelineTaskInputResourceOp

From will update the provided PipelineTaskInputResource to indicate that it should come from tasks.

type PipelineTaskOp

type PipelineTaskOp func(*v1alpha1.PipelineTask)

PipelineTaskOp is an operation which modify a PipelineTask struct.

func PipelineTaskCondition added in v0.6.0

func PipelineTaskCondition(conditionRef string, ops ...PipelineTaskConditionOp) PipelineTaskOp

PipelineTaskCondition adds a condition to the PipelineTask with the specified conditionRef. Any number of PipelineTaskCondition modifiers can be passed to transform it

func PipelineTaskInputResource

func PipelineTaskInputResource(name, resource string, ops ...PipelineTaskInputResourceOp) PipelineTaskOp

PipelineTaskInputResource adds an input resource to the PipelineTask with the specified name, pointing at the declared resource. Any number of PipelineTaskInputResource modifies can be passed to transform it.

func PipelineTaskOutputResource

func PipelineTaskOutputResource(name, resource string) PipelineTaskOp

PipelineTaskOutputResource adds an output resource to the PipelineTask with the specified name, pointing at the declared resource.

func PipelineTaskParam

func PipelineTaskParam(name string, value string, additionalValues ...string) PipelineTaskOp

PipelineTaskParam adds a ResourceParam, with specified name and value, to the PipelineTask.

func PipelineTaskRefKind

func PipelineTaskRefKind(kind v1alpha1.TaskKind) PipelineTaskOp

PipelineTaskRefKind sets the TaskKind to the PipelineTaskRef.

func PipelineTaskSpec added in v0.10.0

func PipelineTaskSpec(spec *v1alpha1.TaskSpec) PipelineTaskOp

func PipelineTaskTimeout added in v0.11.0

func PipelineTaskTimeout(duration time.Duration) PipelineTaskOp

PipelineTaskTimeout sets the timeout for the PipelineTask.

func PipelineTaskWorkspaceBinding added in v0.10.0

func PipelineTaskWorkspaceBinding(name, workspace, subPath string) PipelineTaskOp

func Retries added in v0.4.0

func Retries(retries int) PipelineTaskOp

func RunAfter added in v0.2.0

func RunAfter(tasks ...string) PipelineTaskOp

RunAfter will update the provided Pipeline Task to indicate that it should be run after the provided list of Pipeline Task names.

type PodOp

type PodOp func(*corev1.Pod)

PodOp is an operation which modifies a Pod struct.

func PodAnnotation

func PodAnnotation(key, value string) PodOp

PodLabel adds an annotation to the Pod.

func PodCreationTimestamp added in v0.8.0

func PodCreationTimestamp(t time.Time) PodOp

PodCreationTimestamp sets the creation time of the pod

func PodLabel

func PodLabel(key, value string) PodOp

PodLabel adds a label to the Pod.

func PodNamespace added in v0.12.0

func PodNamespace(namespace string) PodOp

Useful when tests need to specify the namespace

func PodOwnerReference

func PodOwnerReference(kind, name string, ops ...OwnerReferenceOp) PodOp

PodOwnerReference adds an OwnerReference, with specified kind and name, to the Pod.

func PodSpec

func PodSpec(ops ...PodSpecOp) PodOp

PodSpec creates a PodSpec with default values. Any number of PodSpec modifiers can be passed to transform it.

func PodStatus added in v0.8.0

func PodStatus(ops ...PodStatusOp) PodOp

PodStatus creates a PodStatus with default values. Any number of PodStatus modifiers can be passed to transform it.

type PodSpecOp

type PodSpecOp func(*corev1.PodSpec)

PodSpecOp is an operation which modifies a PodSpec struct.

func PodContainer

func PodContainer(name, image string, ops ...ContainerOp) PodSpecOp

PodContainer adds a Container, with the specified name and image, to the PodSpec. Any number of Container modifiers can be passed to transform it.

func PodInitContainer

func PodInitContainer(name, image string, ops ...ContainerOp) PodSpecOp

PodInitContainer adds an InitContainer, with the specified name and image, to the PodSpec. Any number of Container modifiers can be passed to transform it.

func PodRestartPolicy

func PodRestartPolicy(restartPolicy corev1.RestartPolicy) PodSpecOp

PodRestartPolicy sets the restart policy on the PodSpec.

func PodServiceAccountName

func PodServiceAccountName(sa string) PodSpecOp

PodServiceAccountName sets the service account on the PodSpec.

func PodVolumes

func PodVolumes(volumes ...corev1.Volume) PodSpecOp

PodVolume sets the Volumes on the PodSpec.

type PodStatusOp added in v0.8.0

type PodStatusOp func(status *corev1.PodStatus)

PodStatusOp is an operation which modifies a PodStatus struct.

func PodStatusConditions added in v0.8.0

func PodStatusConditions(cond corev1.PodCondition) PodStatusOp

type ResolvedTaskResourcesOp

type ResolvedTaskResourcesOp func(*resources.ResolvedTaskResources)

ResolvedTaskResourcesOp is an operation which modify a ResolvedTaskResources struct.

func ResolvedTaskResourcesInputs

func ResolvedTaskResourcesInputs(name string, resource *v1alpha1.PipelineResource) ResolvedTaskResourcesOp

ResolvedTaskResourcesInputs adds an input PipelineResource, with specified name, to the ResolvedTaskResources.

func ResolvedTaskResourcesOutputs

func ResolvedTaskResourcesOutputs(name string, resource *v1alpha1.PipelineResource) ResolvedTaskResourcesOp

ResolvedTaskResourcesOutputs adds an output PipelineResource, with specified name, to the ResolvedTaskResources.

func ResolvedTaskResourcesTaskSpec

func ResolvedTaskResourcesTaskSpec(ops ...TaskSpecOp) ResolvedTaskResourcesOp

ResolvedTaskResourcesTaskSpec sets a TaskSpec to the ResolvedTaskResources. Any number of TaskSpec modifier can be passed to transform it.

type ResourceListOp added in v0.3.0

type ResourceListOp func(corev1.ResourceList)

ResourceListOp is an operation which modifies a ResourceList struct.

func CPU added in v0.3.0

func CPU(val string) ResourceListOp

CPU sets the CPU resource on the ResourceList.

func EphemeralStorage added in v0.3.0

func EphemeralStorage(val string) ResourceListOp

EphemeralStorage sets the ephemeral storage resource on the ResourceList.

func Memory added in v0.3.0

func Memory(val string) ResourceListOp

Memory sets the memory resource on the ResourceList.

func StepCPU added in v0.6.0

func StepCPU(val string) ResourceListOp

StepCPU sets the CPU resource on the ResourceList.

func StepEphemeralStorage added in v0.6.0

func StepEphemeralStorage(val string) ResourceListOp

StepEphemeralStorage sets the ephemeral storage resource on the ResourceList.

func StepMemory added in v0.6.0

func StepMemory(val string) ResourceListOp

StepMemory sets the memory resource on the ResourceList.

type ResourceRequirementsOp added in v0.3.0

type ResourceRequirementsOp func(*corev1.ResourceRequirements)

ResourceRequirementsOp is an operation which modifies a ResourceRequirements struct.

func Limits added in v0.3.0

Limits adds Limits to the ResourceRequirements.

func Requests added in v0.3.0

func Requests(ops ...ResourceListOp) ResourceRequirementsOp

Requests adds Requests to the ResourceRequirements.

func StepLimits added in v0.6.0

func StepLimits(ops ...ResourceListOp) ResourceRequirementsOp

StepLimits adds Limits to the ResourceRequirements.

func StepRequests added in v0.6.0

func StepRequests(ops ...ResourceListOp) ResourceRequirementsOp

StepRequests adds Requests to the ResourceRequirements.

type SidecarStateOp added in v0.11.0

type SidecarStateOp func(*v1alpha1.SidecarState)

SidecarStateOp is an operation which modifies a SidecarState struct.

func SetSidecarStateRunning added in v0.11.0

func SetSidecarStateRunning(running corev1.ContainerStateRunning) SidecarStateOp

SetSidecarStateRunning sets Running state of a Sidecar.

func SetSidecarStateTerminated added in v0.11.0

func SetSidecarStateTerminated(terminated corev1.ContainerStateTerminated) SidecarStateOp

SetSidecarStateTerminated sets Terminated state of a Sidecar.

func SetSidecarStateWaiting added in v0.11.0

func SetSidecarStateWaiting(waiting corev1.ContainerStateWaiting) SidecarStateOp

SetSidecarStateWaiting sets Waiting state of a Sidecar.

func SidecarStateContainerName added in v0.11.0

func SidecarStateContainerName(containerName string) SidecarStateOp

SetSidecarStateImageID sets ImageID of Sidecar for SidecarState.

func SidecarStateImageID added in v0.11.0

func SidecarStateImageID(imageID string) SidecarStateOp

SetSidecarStateImageID sets ImageID of Sidecar for SidecarState.

func SidecarStateName added in v0.11.0

func SidecarStateName(name string) SidecarStateOp

SidecarStateName sets the name of the Sidecar for the SidecarState.

type StepOp added in v0.6.0

type StepOp func(*v1alpha1.Step)

StepOp is an operation which modifies a Container struct.

func StepArgs added in v0.6.0

func StepArgs(args ...string) StepOp

StepArgs sets the command arguments to the Container (step in this case).

func StepCommand added in v0.6.0

func StepCommand(args ...string) StepOp

StepCommand sets the command to the Container (step in this case).

func StepEnvVar added in v0.6.0

func StepEnvVar(name, value string) StepOp

StepEnvVar add an environment variable, with specified name and value, to the Container (step).

func StepName added in v0.10.0

func StepName(name string) StepOp

StepName sets the name of the step.

func StepResources added in v0.6.0

func StepResources(ops ...ResourceRequirementsOp) StepOp

StepResources adds ResourceRequirements to the Container (step).

func StepScript added in v0.10.0

func StepScript(script string) StepOp

func StepSecurityContext added in v0.9.0

func StepSecurityContext(context *corev1.SecurityContext) StepOp

StepSecurityContext sets the SecurityContext to the Step.

func StepTerminationMessagePath added in v0.6.0

func StepTerminationMessagePath(terminationMessagePath string) StepOp

StepTerminationMessagePath sets the source of the termination message.

func StepVolumeMount added in v0.6.0

func StepVolumeMount(name, mountPath string, ops ...VolumeMountOp) StepOp

StepVolumeMount add a VolumeMount to the Container (step).

func StepWorkingDir added in v0.6.0

func StepWorkingDir(workingDir string) StepOp

StepWorkingDir sets the WorkingDir on the Container.

type StepStateOp

type StepStateOp func(*v1alpha1.StepState)

StepStateOp is an operation which modifies a StepState struct.

func SetStepStateRunning added in v0.9.0

func SetStepStateRunning(running corev1.ContainerStateRunning) StepStateOp

SetStepStateRunning sets Running state of a step.

func SetStepStateTerminated added in v0.9.0

func SetStepStateTerminated(terminated corev1.ContainerStateTerminated) StepStateOp

SetStepStateTerminated sets Terminated state of a step.

func SetStepStateWaiting added in v0.9.0

func SetStepStateWaiting(waiting corev1.ContainerStateWaiting) StepStateOp

SetStepStateWaiting sets Waiting state of a step.

func StateTerminated

func StateTerminated(exitcode int) StepStateOp

StateTerminated sets Terminated to the StepState.

type TaskOp

type TaskOp func(*v1alpha1.Task)

TaskOp is an operation which modify a Task struct.

func TaskNamespace added in v0.12.0

func TaskNamespace(namespace string) TaskOp

Useful when tests need to specify the namespace

func TaskSpec

func TaskSpec(ops ...TaskSpecOp) TaskOp

TaskSpec sets the specified spec of the task. Any number of TaskSpec modifier can be passed to create/modify it.

func TaskType added in v0.12.0

func TaskType() TaskOp

TaskType sets the TypeMeta on the Task which is useful for making it serializable/deserializable.

type TaskRefOp

type TaskRefOp func(*v1alpha1.TaskRef)

TaskRefOp is an operation which modify a TaskRef struct.

func TaskRefAPIVersion

func TaskRefAPIVersion(version string) TaskRefOp

TaskRefAPIVersion sets the specified api version to the TaskRef.

func TaskRefKind

func TaskRefKind(kind v1alpha1.TaskKind) TaskRefOp

TaskRefKind set the specified kind to the TaskRef.

type TaskResourceBindingOp

type TaskResourceBindingOp func(*v1alpha1.TaskResourceBinding)

TaskResourceBindingOp is an operation which modify a TaskResourceBinding struct.

func TaskResourceBindingPaths

func TaskResourceBindingPaths(paths ...string) TaskResourceBindingOp

TaskResourceBindingPaths add any number of path to the TaskResourceBinding.

func TaskResourceBindingRef

func TaskResourceBindingRef(name string) TaskResourceBindingOp

TaskResourceBindingRef set the PipelineResourceRef name to the TaskResourceBinding.

func TaskResourceBindingRefAPIVersion

func TaskResourceBindingRefAPIVersion(version string) TaskResourceBindingOp

TaskResourceBindingRefAPIVersion set the PipelineResourceRef APIVersion to the TaskResourceBinding.

func TaskResourceBindingResourceSpec

func TaskResourceBindingResourceSpec(spec *v1alpha1.PipelineResourceSpec) TaskResourceBindingOp

TaskResourceBindingResourceSpec set the PipelineResourceResourceSpec to the TaskResourceBinding.

type TaskResourceOp

type TaskResourceOp func(*v1alpha1.TaskResource)

TaskResourceOp is an operation which modify a TaskResource struct.

func ResourceOptional added in v0.10.0

func ResourceOptional(optional bool) TaskResourceOp

func ResourceTargetPath

func ResourceTargetPath(path string) TaskResourceOp

type TaskResourcesOp added in v0.11.0

type TaskResourcesOp func(*v1beta1.TaskResources)

TaskResourcesOp is an operation which modify a TaskResources struct.

func TaskResourcesInput added in v0.11.0

func TaskResourcesInput(name string, resourceType v1alpha1.PipelineResourceType, ops ...TaskResourceOp) TaskResourcesOp

TaskResourcesInput adds a TaskResource as Inputs to the TaskResources

func TaskResourcesOutput added in v0.11.0

func TaskResourcesOutput(name string, resourceType v1alpha1.PipelineResourceType, ops ...TaskResourceOp) TaskResourcesOp

TaskResourcesOutput adds a TaskResource as Outputs to the TaskResources

type TaskResultOp added in v0.12.0

type TaskResultOp func(result *v1beta1.TaskResult)

TaskResultOp is an operation which modifies there

func TaskResultsOutput added in v0.12.0

func TaskResultsOutput(name, desc string, ops ...TaskResultOp) TaskResultOp

TaskResultsOutput adds a TaskResult as Outputs to the TaskResources

type TaskRunInputsOp

type TaskRunInputsOp func(*v1alpha1.TaskRunInputs)

TaskRunInputsOp is an operation which modify a TaskRunInputs struct.

func TaskRunInputsParam

func TaskRunInputsParam(name, value string, additionalValues ...string) TaskRunInputsOp

TaskRunInputsParam add a param, with specified name and value, to the TaskRunInputs.

func TaskRunInputsResource

func TaskRunInputsResource(name string, ops ...TaskResourceBindingOp) TaskRunInputsOp

TaskRunInputsResource adds a resource, with specified name, to the TaskRunInputs. Any number of TaskResourceBinding modifier can be passed to transform it.

type TaskRunOp

type TaskRunOp func(*v1alpha1.TaskRun)

TaskRunOp is an operation which modify a TaskRun struct.

func TaskRunAnnotation added in v0.4.0

func TaskRunAnnotation(key, value string) TaskRunOp

func TaskRunLabel

func TaskRunLabel(key, value string) TaskRunOp

func TaskRunLabels added in v0.10.0

func TaskRunLabels(labels map[string]string) TaskRunOp

func TaskRunNamespace added in v0.12.0

func TaskRunNamespace(namespace string) TaskRunOp

Useful when tests need to specify the namespace

func TaskRunOwnerReference

func TaskRunOwnerReference(kind, name string, ops ...OwnerReferenceOp) TaskRunOp

TaskRunOwnerReference sets the OwnerReference, with specified kind and name, to the TaskRun.

func TaskRunSelfLink(selflink string) TaskRunOp

TaskRunSelfLink adds a SelfLink

func TaskRunSpec

func TaskRunSpec(ops ...TaskRunSpecOp) TaskRunOp

TaskRunSpec sets the specified spec of the TaskRun. Any number of TaskRunSpec modifier can be passed to transform it.

func TaskRunStatus

func TaskRunStatus(ops ...TaskRunStatusOp) TaskRunOp

TaskRunStatus sets the TaskRunStatus to tshe TaskRun

type TaskRunOutputsOp

type TaskRunOutputsOp func(*v1alpha1.TaskRunOutputs)

TaskRunOutputsOp is an operation which modify a TaskRunOutputs struct.

func TaskRunOutputsResource

func TaskRunOutputsResource(name string, ops ...TaskResourceBindingOp) TaskRunOutputsOp

TaskRunOutputsResource adds a TaskResourceBinding, with specified name, to the TaskRunOutputs. Any number of TaskResourceBinding modifier can be passed to modifiy it.

type TaskRunResourcesOp added in v0.11.0

type TaskRunResourcesOp func(*v1beta1.TaskRunResources)

TaskRunResourcesOp is an operation which modify a TaskRunResources struct.

func TaskRunResourcesInput added in v0.11.0

func TaskRunResourcesInput(name string, ops ...TaskResourceBindingOp) TaskRunResourcesOp

TaskRunResourcesInput adds a TaskRunResource as Inputs to the TaskRunResources

func TaskRunResourcesOutput added in v0.11.0

func TaskRunResourcesOutput(name string, ops ...TaskResourceBindingOp) TaskRunResourcesOp

TaskRunResourcesOutput adds a TaskRunResource as Outputs to the TaskRunResources

type TaskRunSpecOp

type TaskRunSpecOp func(*v1alpha1.TaskRunSpec)

TaskRunSpecOp is an operation which modify a TaskRunSpec struct.

func TaskRunAffinity

func TaskRunAffinity(affinity *corev1.Affinity) TaskRunSpecOp

TaskRunAffinity sets the Affinity to the TaskRunSpec.

func TaskRunInputs

func TaskRunInputs(ops ...TaskRunInputsOp) TaskRunSpecOp

TaskRunInputs sets inputs to the TaskRunSpec. Any number of TaskRunInputs modifier can be passed to transform it.

func TaskRunNodeSelector

func TaskRunNodeSelector(values map[string]string) TaskRunSpecOp

TaskRunNodeSelector sets the NodeSelector to the TaskRunSpec.

func TaskRunOutputs

func TaskRunOutputs(ops ...TaskRunOutputsOp) TaskRunSpecOp

TaskRunOutputs sets inputs to the TaskRunSpec. Any number of TaskRunOutputs modifier can be passed to transform it.

func TaskRunParam added in v0.11.0

func TaskRunParam(name, value string, additionalValues ...string) TaskRunSpecOp

TaskRunParam sets the Params to the TaskSpec

func TaskRunPodSecurityContext added in v0.9.0

func TaskRunPodSecurityContext(context *corev1.PodSecurityContext) TaskRunSpecOp

TaskRunPodSecurityContext sets the SecurityContext to the TaskRunSpec (through PodTemplate).

func TaskRunResources added in v0.11.0

func TaskRunResources(ops ...TaskRunResourcesOp) TaskRunSpecOp

TaskRunResources sets the TaskRunResources to the TaskRunSpec

func TaskRunServiceAccountName added in v0.8.0

func TaskRunServiceAccountName(sa string) TaskRunSpecOp

TaskRunServiceAccount sets the serviceAccount to the TaskRunSpec.

func TaskRunSpecStatus added in v0.5.0

func TaskRunSpecStatus(status v1alpha1.TaskRunSpecStatus) TaskRunSpecOp

TaskRunSpecStatus sets the Status in the Spec, used for operations such as cancelling executing TaskRuns.

func TaskRunTaskRef

func TaskRunTaskRef(name string, ops ...TaskRefOp) TaskRunSpecOp

TaskRunTaskRef sets the specified Task reference to the TaskRunSpec. Any number of TaskRef modifier can be passed to transform it.

func TaskRunTaskSpec

func TaskRunTaskSpec(ops ...TaskSpecOp) TaskRunSpecOp

TaskRunTaskSpec sets the specified TaskRunSpec reference to the TaskRunSpec. Any number of TaskRunSpec modifier can be passed to transform it.

func TaskRunTimeout

func TaskRunTimeout(d time.Duration) TaskRunSpecOp

TaskRunTimeout sets the timeout duration to the TaskRunSpec.

func TaskRunTolerations added in v0.3.0

func TaskRunTolerations(values []corev1.Toleration) TaskRunSpecOp

TaskRunTolerations sets the Tolerations to the TaskRunSpec.

func TaskRunWorkspaceEmptyDir added in v0.10.0

func TaskRunWorkspaceEmptyDir(name, subPath string) TaskRunSpecOp

TaskRunWorkspaceEmptyDir adds a workspace binding to an empty dir volume source.

func TaskRunWorkspacePVC added in v0.10.0

func TaskRunWorkspacePVC(name, subPath, claimName string) TaskRunSpecOp

TaskRunWorkspacePVC adds a workspace binding to a PVC volume source.

func TaskRunWorkspaceVolumeClaimTemplate added in v0.12.0

func TaskRunWorkspaceVolumeClaimTemplate(name, subPath string, volumeClaimTemplate *corev1.PersistentVolumeClaim) TaskRunSpecOp

TaskRunWorkspaceVolumeClaimTemplate adds a workspace binding with a VolumeClaimTemplate volume source.

type TaskRunStatusOp

type TaskRunStatusOp func(*v1alpha1.TaskRunStatus)

TaskRunStatusOp is an operation which modify a TaskRunStatus struct.

func PodName

func PodName(name string) TaskRunStatusOp

PodName sets the Pod name to the TaskRunStatus.

func Retry added in v0.4.0

func SidecarState added in v0.11.0

func SidecarState(ops ...SidecarStateOp) TaskRunStatusOp

SidecarState adds a SidecarState to the TaskRunStatus.

func StatusCondition added in v0.6.0

func StatusCondition(condition apis.Condition) TaskRunStatusOp

StatusCondition adds a StatusCondition to the TaskRunStatus.

func StepState

func StepState(ops ...StepStateOp) TaskRunStatusOp

StepState adds a StepState to the TaskRunStatus.

func TaskRunCloudEvent added in v0.7.0

func TaskRunCloudEvent(target, error string, retryCount int32, condition v1alpha1.CloudEventCondition) TaskRunStatusOp

TaskRunCloudEvent adds an event to the TaskRunStatus.

func TaskRunCompletionTime added in v0.8.0

func TaskRunCompletionTime(completionTime time.Time) TaskRunStatusOp

TaskRunCompletionTime sets the start time to the TaskRunStatus.

func TaskRunResult added in v0.11.0

func TaskRunResult(name, value string) TaskRunStatusOp

func TaskRunStartTime

func TaskRunStartTime(startTime time.Time) TaskRunStatusOp

TaskRunStartTime sets the start time to the TaskRunStatus.

type TaskSpecOp

type TaskSpecOp func(*v1alpha1.TaskSpec)

TaskSpeOp is an operation which modify a TaskSpec struct.

func Sidecar added in v0.7.0

func Sidecar(name, image string, ops ...ContainerOp) TaskSpecOp

func Step

func Step(image string, ops ...StepOp) TaskSpecOp

Step adds a step with the specified name and image to the TaskSpec. Any number of Container modifier can be passed to transform it.

func TaskDescription added in v0.11.0

func TaskDescription(desc string) TaskSpecOp

TaskDescription sets the description of the task

func TaskInputs

func TaskInputs(ops ...InputsOp) TaskSpecOp

TaskInputs sets inputs to the TaskSpec. Any number of Inputs modifier can be passed to transform it.

func TaskOutputs

func TaskOutputs(ops ...OutputsOp) TaskSpecOp

TaskOutputs sets inputs to the TaskSpec. Any number of Outputs modifier can be passed to transform it.

func TaskParam added in v0.11.0

func TaskParam(name string, pt v1alpha1.ParamType, ops ...ParamSpecOp) TaskSpecOp

TaskParam sets the Params to the TaskSpec

func TaskResources added in v0.11.0

func TaskResources(ops ...TaskResourcesOp) TaskSpecOp

TaskResources sets the Resources to the TaskSpec

func TaskResults added in v0.12.0

func TaskResults(name, desc string) TaskSpecOp

TaskResults sets the Results to the TaskSpec

func TaskStepTemplate added in v0.5.0

func TaskStepTemplate(ops ...ContainerOp) TaskSpecOp

TaskStepTemplate adds a base container for all steps in the task.

func TaskVolume

func TaskVolume(name string, ops ...VolumeOp) TaskSpecOp

TaskVolume adds a volume with specified name to the TaskSpec. Any number of Volume modifier can be passed to transform it.

func TaskWorkspace added in v0.10.0

func TaskWorkspace(name, desc, mountPath string, readOnly bool) TaskSpecOp

TaskWorkspace adds a workspace declaration.

type VolumeMountOp

type VolumeMountOp func(*corev1.VolumeMount)

VolumeMountOp is an operation which modifies a VolumeMount struct.

type VolumeOp

type VolumeOp func(*corev1.Volume)

VolumeOp is an operation which modify a Volume struct.

func VolumeSource

func VolumeSource(s corev1.VolumeSource) VolumeOp

VolumeSource sets the VolumeSource to the Volume.

Jump to

Keyboard shortcuts

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