v1alpha1

package
v0.9.3-beta Latest Latest
Warning

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

Go to latest
Published: Mar 10, 2019 License: Apache-2.0 Imports: 10 Imported by: 5

Documentation

Overview

Package v1alpha1 defines all CRD definitions +groupName=cyclone.io

Index

Constants

View Source
const (
	// ImageResourceType represents image in docker registry
	ImageResourceType = "Image"
	// GitResourceType represents git repo in SCM
	GitResourceType = "Git"
	// KVResourceType represents a set of key-values
	KVResourceType = "KV"
	// GeneralResourceType represents general resource
	GeneralResourceType = "General"
)
View Source
const (
	// PullAlways indicates always pull resource. Old data would be removed if exist.
	PullAlways = "Always"
	// PullIfNotExist performs incremental pull if old data exists.
	PullIfNotExist = "IfNotExist"
)
View Source
const (
	// StatusPending means stage is not executed yet when used for stage. When
	// used for WorkflowRun overall status, it means no stages in WorkflowRun
	// are started to execute.
	StatusPending = "Pending"
	// StatusRunning means Stage or WorkflowRun is running.
	StatusRunning = "Running"
	// StatusWaiting means Stage or WorkflowRun have finished, but need to wait
	// for external events to continue. For example, a stage's executing result
	// needs approval of users, so that following stages can preceeding.
	StatusWaiting = "Waiting"
	// StatusCompleted means Stage or WorkflowRun gotten completed without errors.
	StatusCompleted = "Completed"
	// StatusError indicates something wrong in the execution of Stage or WorkflowRun.
	StatusError = "Error"
	// StatusCancelled indicates WorkflowRun have been cancelled.
	StatusCancelled = "Cancelled"
)
View Source
const APIVersion = GroupName + "/" + Version

APIVersion ...

View Source
const GroupName = "cyclone.io"

GroupName is the group name use in this package

View Source
const Version = "v1alpha1"

Version is version of the CRD

Variables

View Source
var (
	// SchemeBuilder ...
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
	// AddToScheme ...
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"}

SchemeGroupVersion is group version used to register these objects

Functions

func EnsureCRDCreated

func EnsureCRDCreated(masterURL, kubeConfigPath string)

EnsureCRDCreated will create built-in CRDs if they are not exist.

func GroupResource

func GroupResource(resource string) schema.GroupResource

GroupResource ...

func RegisterDefaults

func RegisterDefaults(scheme *runtime.Scheme) error

RegisterDefaults adds defaulters functions to the given scheme. Public to allow building arbitrary schemes. All generated defaulters are covering - they call all nested defaulters.

Types

type Argument

type Argument struct {
	Name    string `json:"name"`
	Default string `json:"default"`
}

Argument defines a argument.

func (*Argument) DeepCopy

func (in *Argument) DeepCopy() *Argument

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

func (*Argument) DeepCopyInto

func (in *Argument) DeepCopyInto(out *Argument)

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

type ArgumentValue

type ArgumentValue ParameterItem

ArgumentValue defines a argument value

func (*ArgumentValue) DeepCopy

func (in *ArgumentValue) DeepCopy() *ArgumentValue

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

func (*ArgumentValue) DeepCopyInto

func (in *ArgumentValue) DeepCopyInto(out *ArgumentValue)

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

type ArtifactItem

type ArtifactItem struct {
	// Artifact name
	Name string `json:"name"`
	// Path of the artifact
	Path string `json:"path"`
	// Source of the artifact. When artifact is used as input, this is needed.
	// It's in the format of: <stage name>/<artifact name>
	// +Optional
	Source string `json:"source"`
}

ArtifactItem defines an artifact

func (*ArtifactItem) DeepCopy

func (in *ArtifactItem) DeepCopy() *ArtifactItem

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

func (*ArtifactItem) DeepCopyInto

func (in *ArtifactItem) DeepCopyInto(out *ArtifactItem)

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

type CronTrigger added in v0.9.3

type CronTrigger struct {
	Schedule string `json:"schedule"`
}

CronTrigger represents the cron trigger policy.

func (*CronTrigger) DeepCopy added in v0.9.3

func (in *CronTrigger) DeepCopy() *CronTrigger

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

func (*CronTrigger) DeepCopyInto added in v0.9.3

func (in *CronTrigger) DeepCopyInto(out *CronTrigger)

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

type ExecutionContext added in v0.9.3

type ExecutionContext struct {
	// TODO(ChenDe): Add multi-cluster support
	// ...
	// Namespace is namespace where to run workflow
	Namespace string `json:"namespace"`
	// PVC is the PVC used to run workflow
	PVC string `json:"pvc"`
}

ExecutionContext is execution context of a workflow. Namespace, pvc cluster info would be defined here.

func (*ExecutionContext) DeepCopy added in v0.9.3

func (in *ExecutionContext) DeepCopy() *ExecutionContext

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

func (*ExecutionContext) DeepCopyInto added in v0.9.3

func (in *ExecutionContext) DeepCopyInto(out *ExecutionContext)

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

type Inputs

type Inputs struct {
	// Resources used as input
	Resources []ResourceItem `json:"resources,omitempty"`
	// Parameters used as input
	Arguments []ArgumentValue `json:"arguments,omitempty"`
	// Artifacts to output
	Artifacts []ArtifactItem `json:"artifacts,omitempty"`
}

Inputs defines stage inputs.

func (*Inputs) DeepCopy

func (in *Inputs) DeepCopy() *Inputs

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

func (*Inputs) DeepCopyInto

func (in *Inputs) DeepCopyInto(out *Inputs)

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

type IntegrationItem added in v0.9.3

type IntegrationItem struct {
	// Type is the integration type
	Type string `json:"type"`
	// Name is the default value of the corresponding type of integration
	Name string `json:"name"`
}

IntegrationItem describes default value of a type of integrations

func (*IntegrationItem) DeepCopy added in v0.9.3

func (in *IntegrationItem) DeepCopy() *IntegrationItem

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

func (*IntegrationItem) DeepCopyInto added in v0.9.3

func (in *IntegrationItem) DeepCopyInto(out *IntegrationItem)

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

type KeyValue

type KeyValue struct {
	Key   string `json:"key"`
	Value string `json:"value"`
}

KeyValue defines a key-value pair

func (*KeyValue) DeepCopy

func (in *KeyValue) DeepCopy() *KeyValue

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

func (*KeyValue) DeepCopyInto

func (in *KeyValue) DeepCopyInto(out *KeyValue)

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

type Outputs

type Outputs struct {
	// Resources used as output
	Resources []ResourceItem `json:"resources,omitempty"`
	// Artifacts to output
	Artifacts []ArtifactItem `json:"artifacts,omitempty"`
}

Outputs defines stage output.

func (*Outputs) DeepCopy

func (in *Outputs) DeepCopy() *Outputs

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

func (*Outputs) DeepCopyInto

func (in *Outputs) DeepCopyInto(out *Outputs)

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

type ParameterConfig

type ParameterConfig struct {
	// Whose parameters to configure
	Name string `json:"name"`
	// Parameters ...
	Parameters []ParameterItem `json:"parameters"`
}

ParameterConfig configures parameters of a resource or a stage.

func (*ParameterConfig) DeepCopy

func (in *ParameterConfig) DeepCopy() *ParameterConfig

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

func (*ParameterConfig) DeepCopyInto

func (in *ParameterConfig) DeepCopyInto(out *ParameterConfig)

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

type ParameterItem

type ParameterItem struct {
	// Name of the parameter
	Name string `json:"name"`
	// Value of the parameter
	Value string `json:"value"`
}

ParameterItem defines a parameter

func (*ParameterItem) DeepCopy

func (in *ParameterItem) DeepCopy() *ParameterItem

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

func (*ParameterItem) DeepCopyInto

func (in *ParameterItem) DeepCopyInto(out *ParameterItem)

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

type Persistent

type Persistent struct {
	// Name of the PVC to hold the resource
	PVC string `json:"pvc"`
	// Path of resource in the PVC
	Path string `json:"path"`
	// Whether to pull resource when there already be data
	PullPolicy ResourcePullPolicy `json:"pullPolicy"`
}

Persistent describes persistent parameters for the resource.

func (*Persistent) DeepCopy

func (in *Persistent) DeepCopy() *Persistent

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

func (*Persistent) DeepCopyInto

func (in *Persistent) DeepCopyInto(out *Persistent)

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

type PodInfo

type PodInfo struct {
	Name      string `json:"name"`
	Namespace string `json:"namespace"`
}

PodInfo describes the pod a stage created.

func (*PodInfo) DeepCopy

func (in *PodInfo) DeepCopy() *PodInfo

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

func (*PodInfo) DeepCopyInto

func (in *PodInfo) DeepCopyInto(out *PodInfo)

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

type PodWorkload

type PodWorkload struct {
	// Stage inputs
	Inputs Inputs `json:"inputs,omitempty"`
	// Stage outputs
	Outputs Outputs `json:"outputs,omitempty"`
	// Stage workload specification
	Spec corev1.PodSpec `json:"spec"`
}

PodWorkload describes pod type workload, a complete pod spec is included.

func (*PodWorkload) DeepCopy

func (in *PodWorkload) DeepCopy() *PodWorkload

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

func (*PodWorkload) DeepCopyInto

func (in *PodWorkload) DeepCopyInto(out *PodWorkload)

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

type Project added in v0.9.3

type Project struct {
	// Metadata for the resource, like kind and apiversion
	meta_v1.TypeMeta `json:",inline"`
	// Metadata for the particular object, including name, namespace, labels, etc
	meta_v1.ObjectMeta `json:"metadata,omitempty"`
	// Spec is the Workflow specification
	Spec ProjectSpec `json:"spec"`
}

Project defines a project which holds common information of workflows under it.

func (*Project) DeepCopy added in v0.9.3

func (in *Project) DeepCopy() *Project

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

func (*Project) DeepCopyInto added in v0.9.3

func (in *Project) DeepCopyInto(out *Project)

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

func (*Project) DeepCopyObject added in v0.9.3

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

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

type ProjectList added in v0.9.3

type ProjectList struct {
	meta_v1.TypeMeta `json:",inline"`
	meta_v1.ListMeta `json:"metadata"`
	Items            []Project `json:"items"`
}

ProjectList describes an array of Project instances.

func (*ProjectList) DeepCopy added in v0.9.3

func (in *ProjectList) DeepCopy() *ProjectList

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

func (*ProjectList) DeepCopyInto added in v0.9.3

func (in *ProjectList) DeepCopyInto(out *ProjectList)

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

func (*ProjectList) DeepCopyObject added in v0.9.3

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

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

type ProjectSpec added in v0.9.3

type ProjectSpec struct {
	// Integrations contains default value of various type of integrations.
	Integrations []IntegrationItem `json:"integrations"`

	// Quota is the default quota of the workflow under it,
	// eg map[core_v1.ResourceName]string{"requests.cpu": "2", "requests.memory": "4Gi"}
	Quota map[core_v1.ResourceName]string `json:"quota"`
}

ProjectSpec defines project specification.

func (*ProjectSpec) DeepCopy added in v0.9.3

func (in *ProjectSpec) DeepCopy() *ProjectSpec

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

func (*ProjectSpec) DeepCopyInto added in v0.9.3

func (in *ProjectSpec) DeepCopyInto(out *ProjectSpec)

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

type Resource

type Resource struct {
	// Metadata for the resource, like kind and apiversion
	metav1.TypeMeta `json:",inline"`
	// Metadata for the particular object, including name, namespace, labels, etc
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Resource specification
	Spec ResourceSpec `json:"spec"`
}

Resource represents a resource used in workflow

func (*Resource) DeepCopy

func (in *Resource) DeepCopy() *Resource

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

func (*Resource) DeepCopyInto

func (in *Resource) DeepCopyInto(out *Resource)

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

func (*Resource) DeepCopyObject

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

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

type ResourceItem

type ResourceItem struct {
	// Resource name
	Name string `json:"name"`
	// For input resource, this is the path that resource will be mounted in workload container.
	// Resolver would resolve resources and mount it in this path.
	// For output resource, this is the path in the workload container specify output data, for
	// the moment, only one path can be given. In the resolver container, data specified here would
	// be mounted in /workspace/data by default. Resolver will then push resource to remote server.
	// TODO(ChenDe): For output resource, need support multiple paths.
	Path string `json:"path"`
}

ResourceItem defines a resource

func (*ResourceItem) DeepCopy

func (in *ResourceItem) DeepCopy() *ResourceItem

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

func (*ResourceItem) DeepCopyInto

func (in *ResourceItem) DeepCopyInto(out *ResourceItem)

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

type ResourceList

type ResourceList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`
	Items           []Resource `json:"items"`
}

ResourceList describes an array of Resource instances.

func (*ResourceList) DeepCopy

func (in *ResourceList) DeepCopy() *ResourceList

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

func (*ResourceList) DeepCopyInto

func (in *ResourceList) DeepCopyInto(out *ResourceList)

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

func (*ResourceList) DeepCopyObject

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

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

type ResourcePullPolicy

type ResourcePullPolicy string

ResourcePullPolicy indicates resource pull policy

type ResourceSpec

type ResourceSpec struct {
	// Image to resolve this kind of resource.
	Resolver string `json:"resolver,omitempty"`
	// Resource type, e.g. image, git, kv, general.
	Type ResourceType `json:"type"`
	// Persistent resource to PVC.
	Persistent *Persistent `json:"persistent"`
	// Parameters of the resource
	Parameters []ParameterItem `json:"parameters"`
}

ResourceSpec describes a resource

func (*ResourceSpec) DeepCopy

func (in *ResourceSpec) DeepCopy() *ResourceSpec

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

func (*ResourceSpec) DeepCopyInto

func (in *ResourceSpec) DeepCopyInto(out *ResourceSpec)

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

type ResourceType

type ResourceType string

ResourceType defines resource type

type Stage

type Stage struct {
	// Metadata for the resource, like kind and apiversion
	metav1.TypeMeta `json:",inline"`
	// Metadata for the particular object, including name, namespace, labels, etc
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Stage specification
	Spec StageSpec `json:"spec,omitempty"`
}

Stage defines a workflow stage. Only one of Spec and Template should be specified.

func (*Stage) DeepCopy

func (in *Stage) DeepCopy() *Stage

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

func (*Stage) DeepCopyInto

func (in *Stage) DeepCopyInto(out *Stage)

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

func (*Stage) DeepCopyObject

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

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

type StageItem

type StageItem struct {
	// Name of stage
	Name string `json:"name"`
	// Input artifacts that this stage needed, we bind the artifacts source here.
	Artifacts []ArtifactItem `json:"artifacts"`
	// Stages that this stage depends on
	Depends []string `json:"depends"`
}

StageItem describes a stage in a workflow.

func (*StageItem) DeepCopy

func (in *StageItem) DeepCopy() *StageItem

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

func (*StageItem) DeepCopyInto

func (in *StageItem) DeepCopyInto(out *StageItem)

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

type StageList

type StageList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`
	Items           []Stage `json:"items"`
}

StageList describes an array of Stage instances.

func (*StageList) DeepCopy

func (in *StageList) DeepCopy() *StageList

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

func (*StageList) DeepCopyInto

func (in *StageList) DeepCopyInto(out *StageList)

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

func (*StageList) DeepCopyObject

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

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

type StageSpec

type StageSpec struct {
	// Pod kind workload
	Pod *PodWorkload `json:"pod,omitempty"`
}

StageSpec defines stage specification. Exact one workload should be specified.

func (*StageSpec) DeepCopy

func (in *StageSpec) DeepCopy() *StageSpec

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

func (*StageSpec) DeepCopyInto

func (in *StageSpec) DeepCopyInto(out *StageSpec)

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

type StageStatus

type StageStatus struct {
	// Information of the pod
	Pod *PodInfo `json:"pod"`
	// Conditions of a stage
	Status Status `json:"status"`
	// Key-value outputs of this stage
	Outputs []KeyValue `json:"outputs"`
}

StageStatus describes status of a stage execution.

func (*StageStatus) DeepCopy

func (in *StageStatus) DeepCopy() *StageStatus

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

func (*StageStatus) DeepCopyInto

func (in *StageStatus) DeepCopyInto(out *StageStatus)

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

type Status

type Status struct {
	// Status with value: Running, Waiting, Completed, Error
	Status string `json:"status"`

	// LastTransitionTime is the last time the status transitioned from one status to another.
	// +optional
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`

	// The reason for the status's last transition.
	// +optional
	Reason string `json:"reason,omitempty"`

	// A human readable message indicating details about the transition.
	// +optional
	Message string `json:"message,omitempty"`

	// StartTime is the start time of processing stage/workflowrun
	StartTime metav1.Time `json:"startTime,omitempty"`
}

Status of a Stage in a WorkflowRun or the whole WorkflowRun. +k8s:deepcopy-gen=true

func (*Status) DeepCopy

func (in *Status) DeepCopy() *Status

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

func (*Status) DeepCopyInto

func (in *Status) DeepCopyInto(out *Status)

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

type TriggerType

type TriggerType string

TriggerType defines type of workflow trigger

const (
	// TriggerTypeCron indicates cron trigger
	TriggerTypeCron TriggerType = "Cron"

	// TriggerTypeWebhook indicates webhook trigger
	TriggerTypeWebhook TriggerType = "Webhook"
)

type Workflow

type Workflow struct {
	// Metadata for the resource, like kind and apiversion
	metav1.TypeMeta `json:",inline"`
	// Metadata for the particular object, including name, namespace, labels, etc
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Workflow specification
	Spec WorkflowSpec `json:"spec"`
}

Workflow defines a workflow

func (*Workflow) DeepCopy

func (in *Workflow) DeepCopy() *Workflow

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

func (*Workflow) DeepCopyInto

func (in *Workflow) DeepCopyInto(out *Workflow)

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

func (*Workflow) DeepCopyObject

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

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

type WorkflowList

type WorkflowList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`
	Items           []Workflow `json:"items"`
}

WorkflowList describes an array of Workflow instances.

func (*WorkflowList) DeepCopy

func (in *WorkflowList) DeepCopy() *WorkflowList

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

func (*WorkflowList) DeepCopyInto

func (in *WorkflowList) DeepCopyInto(out *WorkflowList)

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

func (*WorkflowList) DeepCopyObject

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

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

type WorkflowRun

type WorkflowRun struct {
	// Metadata for the resource, like kind and apiversion
	metav1.TypeMeta `json:",inline"`
	// Metadata for the particular object, including name, namespace, labels, etc
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Workflow run specification
	Spec WorkflowRunSpec `json:"spec"`
	// Status of workflow execution
	Status WorkflowRunStatus `json:"status,omitempty"`
}

WorkflowRun describes one workflow run, giving concrete runtime parameters and recording workflow run status.

func (*WorkflowRun) DeepCopy

func (in *WorkflowRun) DeepCopy() *WorkflowRun

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

func (*WorkflowRun) DeepCopyInto

func (in *WorkflowRun) DeepCopyInto(out *WorkflowRun)

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

func (*WorkflowRun) DeepCopyObject

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

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

type WorkflowRunList

type WorkflowRunList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`
	Items           []WorkflowRun `json:"items"`
}

WorkflowRunList describes an array of WorkflowRun instances.

func (*WorkflowRunList) DeepCopy

func (in *WorkflowRunList) DeepCopy() *WorkflowRunList

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

func (*WorkflowRunList) DeepCopyInto

func (in *WorkflowRunList) DeepCopyInto(out *WorkflowRunList)

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

func (*WorkflowRunList) DeepCopyObject

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

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

type WorkflowRunSpec

type WorkflowRunSpec struct {
	// Reference to a Workflow
	WorkflowRef *corev1.ObjectReference `json:"workflowRef"`
	// Stages in the workflow to start execution
	StartStages []string `json:"startStages"`
	// Stages in the workflow to end execution
	EndStages []string `json:"endStages"`
	// Maximum time this workflow can run
	Timeout string `json:"timeout"`
	// ServiceAccount used in the workflow execution
	ServiceAccount string `json:"serviceAccount"`
	// Resource parameters
	Resources []ParameterConfig `json:"resources"`
	// Stage parameters
	Stages []ParameterConfig `json:"stages"`
	// Execution context which specifies namespace and PVC used
	ExecutionContext *ExecutionContext `json:"executionContext"`
}

WorkflowRunSpec defines workflow run specification.

func (*WorkflowRunSpec) DeepCopy

func (in *WorkflowRunSpec) DeepCopy() *WorkflowRunSpec

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

func (*WorkflowRunSpec) DeepCopyInto

func (in *WorkflowRunSpec) DeepCopyInto(out *WorkflowRunSpec)

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

type WorkflowRunStatus

type WorkflowRunStatus struct {
	// Status of all stages
	Stages map[string]*StageStatus `json:"stages"`
	// Overall status
	Overall Status `json:"overall"`
	// Whether gc is performed on this WorkflowRun, such as deleting pods.
	Cleaned bool `json:"cleaned"`
}

WorkflowRunStatus records workflow running status.

func (*WorkflowRunStatus) DeepCopy

func (in *WorkflowRunStatus) DeepCopy() *WorkflowRunStatus

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

func (*WorkflowRunStatus) DeepCopyInto

func (in *WorkflowRunStatus) DeepCopyInto(out *WorkflowRunStatus)

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

type WorkflowSpec

type WorkflowSpec struct {
	Resources *corev1.ResourceRequirements
	Stages    []StageItem `json:"stages"`
}

WorkflowSpec defines workflow specification.

func (*WorkflowSpec) DeepCopy

func (in *WorkflowSpec) DeepCopy() *WorkflowSpec

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

func (*WorkflowSpec) DeepCopyInto

func (in *WorkflowSpec) DeepCopyInto(out *WorkflowSpec)

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

type WorkflowTrigger

type WorkflowTrigger struct {
	// Metadata for the resource, like kind and apiversion
	metav1.TypeMeta `json:",inline"`
	// Metadata for the particular object, including name, namespace, labels, etc
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Specification of this workflow trigger
	Spec WorkflowTriggerSpec `json:"spec"`
	// Status of this trigger
	Status WorkflowTriggerStatus `json:"status"`
}

WorkflowTrigger describes trigger of an workflow, time schedule and webhook supported.

func (*WorkflowTrigger) DeepCopy

func (in *WorkflowTrigger) DeepCopy() *WorkflowTrigger

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

func (*WorkflowTrigger) DeepCopyInto

func (in *WorkflowTrigger) DeepCopyInto(out *WorkflowTrigger)

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

func (*WorkflowTrigger) DeepCopyObject

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

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

type WorkflowTriggerList

type WorkflowTriggerList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`
	Items           []WorkflowTrigger `json:"items"`
}

WorkflowTriggerList describes an array of WorkflowTrigger instances.

func (*WorkflowTriggerList) DeepCopy

func (in *WorkflowTriggerList) DeepCopy() *WorkflowTriggerList

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

func (*WorkflowTriggerList) DeepCopyInto

func (in *WorkflowTriggerList) DeepCopyInto(out *WorkflowTriggerList)

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

func (*WorkflowTriggerList) DeepCopyObject

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

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

type WorkflowTriggerSpec

type WorkflowTriggerSpec struct {
	// Type of this trigger, Cron or Webhook
	Type TriggerType `json:"type"`
	// Parameters of the trigger to run workflow
	Parameters []ParameterItem `json:"parameters"`
	// CronTrigger represents cron trigger config.
	Cron CronTrigger `json:"cron,omitempty"`
	// Whether this trigger is disabled, if set to true, no workflow will be triggered
	Disabled bool `json:"disabled"`
	// Spec to run the workflow
	WorkflowRunSpec `json:",inline"`
}

WorkflowTriggerSpec defines workflow trigger definition.

func (*WorkflowTriggerSpec) DeepCopy

func (in *WorkflowTriggerSpec) DeepCopy() *WorkflowTriggerSpec

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

func (*WorkflowTriggerSpec) DeepCopyInto

func (in *WorkflowTriggerSpec) DeepCopyInto(out *WorkflowTriggerSpec)

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

type WorkflowTriggerStatus

type WorkflowTriggerStatus struct {
	// How many times this trigger got triggered
	Count int `json:"count"`
}

WorkflowTriggerStatus describes status of a workflow trigger

func (*WorkflowTriggerStatus) DeepCopy

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

func (*WorkflowTriggerStatus) DeepCopyInto

func (in *WorkflowTriggerStatus) DeepCopyInto(out *WorkflowTriggerStatus)

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