v1alpha1

package
v1.0.3-beta Latest Latest
Warning

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

Go to latest
Published: Feb 3, 2021 License: Apache-2.0 Imports: 11 Imported by: 5

Documentation

Overview

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

Index

Constants

View Source
const (
	// ImageResourceType represents image in docker registry
	ImageResourceType = "Image"
	// GitResourceType represents git repo in SCM
	GitResourceType = "Git"
	// SvnResourceType represents svn repo in SCM
	SvnResourceType = "Svn"
)
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 APIVersion = GroupName + "/" + Version

APIVersion ...

View Source
const GroupName = "cyclone.dev"

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 ClusterCredential added in v0.9.6

type ClusterCredential struct {
	// Server represents the address of cluster.
	Server string `json:"server"`
	// User is a user of the cluster.
	User string `json:"user"`
	// Password is the password of the corresponding user.
	Password string `json:"password"`
	// BearerToken is the credential to access cluster.
	BearerToken string `json:"bearerToken"`
	// TLSClientConfig is the config about TLS
	TLSClientConfig *TLSClientConfig `json:"tlsClientConfig,omitempty"`
	// KubeConfig is the config about kube config
	KubeConfig *cmd_api.Config `json:"kubeConfig,omitempty"`
}

ClusterCredential contains credential info about cluster

func (*ClusterCredential) DeepCopy added in v0.9.6

func (in *ClusterCredential) DeepCopy() *ClusterCredential

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

func (*ClusterCredential) DeepCopyInto added in v0.9.6

func (in *ClusterCredential) DeepCopyInto(out *ClusterCredential)

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

type ContainerGroup added in v0.9.6

type ContainerGroup string

ContainerGroup defines group of containers in a stage pod, for example, 'sidecar', 'workload', 'initContainer'

const (
	// ContainerGroupAll represents all containers in a pod
	ContainerGroupAll ContainerGroup = "All"
	// ContainerGroupSidecar represents sidecar containers in a pod
	ContainerGroupSidecar ContainerGroup = "Sidecar"
	// ContainerGroupWorkload repressents user containers in a pod
	ContainerGroupWorkload ContainerGroup = "Workload"
)

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 DelegationWorkload added in v0.9.3

type DelegationWorkload struct {
	// Type identifies what kind of workload this is, for example 'notification', Cyclone doesn't need to understand it.
	Type string `json:"type"`
	// URL of the target service. Cyclone would send POST request to this URL.
	URL string `json:"url"`
	// Config is a json string that configure how to run this workload, it's interpreted by external services.
	Config string `json:"config"`
}

DelegationWorkload describes workload delegated to external services.

func (*DelegationWorkload) DeepCopy added in v0.9.3

func (in *DelegationWorkload) DeepCopy() *DelegationWorkload

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

func (*DelegationWorkload) DeepCopyInto added in v0.9.3

func (in *DelegationWorkload) DeepCopyInto(out *DelegationWorkload)

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

type ExecutionCluster added in v0.9.6

type ExecutionCluster 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 ExecutionClusterSpec `json:"spec"`
}

ExecutionCluster defines a cluster to run workflows.

func (*ExecutionCluster) DeepCopy added in v0.9.6

func (in *ExecutionCluster) DeepCopy() *ExecutionCluster

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

func (*ExecutionCluster) DeepCopyInto added in v0.9.6

func (in *ExecutionCluster) DeepCopyInto(out *ExecutionCluster)

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

func (*ExecutionCluster) DeepCopyObject added in v0.9.6

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

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

type ExecutionClusterList added in v0.9.6

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

ExecutionClusterList describes an array of ExecutionCluster instances.

func (*ExecutionClusterList) DeepCopy added in v0.9.6

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

func (*ExecutionClusterList) DeepCopyInto added in v0.9.6

func (in *ExecutionClusterList) DeepCopyInto(out *ExecutionClusterList)

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

func (*ExecutionClusterList) DeepCopyObject added in v0.9.6

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

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

type ExecutionClusterSpec added in v0.9.6

type ExecutionClusterSpec struct {
	// Credential is the credential info of the cluster
	Credential ClusterCredential `json:"credential"`
}

ExecutionClusterSpec defines execution cluster specification.

func (*ExecutionClusterSpec) DeepCopy added in v0.9.6

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

func (*ExecutionClusterSpec) DeepCopyInto added in v0.9.6

func (in *ExecutionClusterSpec) DeepCopyInto(out *ExecutionClusterSpec)

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 {
	// Name of the execution cluster
	Cluster string `json:"cluster"`
	// 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 GlobalVariable added in v0.9.10

type GlobalVariable struct {
	Name  string `json:"name,omitempty"`
	Value string `json:"value,omitempty"`
}

GlobalVariable defines a global variable, For the moment we support three kinds of value: - concrete string, for example: 'latest' - $(random:<length>), random string with given length, for example: $(random:5) - $(timenow:<format>), now time with given time format, for example: $(timenow:RFC1123)

func (*GlobalVariable) DeepCopy added in v0.9.10

func (in *GlobalVariable) DeepCopy() *GlobalVariable

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

func (*GlobalVariable) DeepCopyInto added in v0.9.10

func (in *GlobalVariable) DeepCopyInto(out *GlobalVariable)

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 IntegrationBind added in v0.9.6

type IntegrationBind struct {
	// IntegrationType is type of integration to bind for this resource type, for example 'DockerRegistry'
	IntegrationType string `json:"integrationType"`
	// ParamBindings binds parameters of one resource type to the integration. It's a map with keys being
	// parameter names of the resource type, and values being the parameter names of the integration type.
	ParamBindings map[string]string `json:"paramBindings"`
}

IntegrationBind describes bindings between a resource type and a integration type.

func (*IntegrationBind) DeepCopy added in v0.9.6

func (in *IntegrationBind) DeepCopy() *IntegrationBind

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

func (*IntegrationBind) DeepCopyInto added in v0.9.6

func (in *IntegrationBind) DeepCopyInto(out *IntegrationBind)

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 Notification added in v0.9.3

type Notification struct {
	// Policy represents the policy to send notifications.
	Policy NotificationPolicy `json:"policy"`
	// Receivers represents the receivers of notifications.
	Receivers []NotificationReceiver `json:"receivers"`
}

Notification represents notifications for workflowrun results.

func (*Notification) DeepCopy added in v0.9.3

func (in *Notification) DeepCopy() *Notification

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

func (*Notification) DeepCopyInto added in v0.9.3

func (in *Notification) DeepCopyInto(out *Notification)

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

type NotificationPolicy added in v0.9.3

type NotificationPolicy string

NotificationPolicy represents the policy to send notifications.

const (
	// NotificationPolicyAlways represents always sending notifications no matter what workflow results are.
	NotificationPolicyAlways NotificationPolicy = "Always"
	// NotificationPolicySuccess represents sending notifications only when workflows succeed.
	NotificationPolicySuccess NotificationPolicy = "Success"
	// NotificationPolicyFailure represents sending notifications only when workflows fail.
	NotificationPolicyFailure NotificationPolicy = "Failure"
)
const (
	// NotificationTypeEmail represents sending notifications by email.
	NotificationTypeEmail NotificationPolicy = "Email"
	// NotificationTypeSlack represents sending notifications by Slack.
	NotificationTypeSlack NotificationPolicy = "Slack"
	// NotificationTypeWebhook represents sending notifications by webhook.
	NotificationTypeWebhook NotificationPolicy = "Webhook"
)

type NotificationReceiver added in v0.9.3

type NotificationReceiver struct {
	// Type represents the way to send notifications.
	Type NotificationType `json:"type"`
	// Addresses represents the addresses to receive notifications.
	Addresses []string `json:"addresses"`
}

NotificationReceiver represents the receiver of notifications.

func (*NotificationReceiver) DeepCopy added in v0.9.3

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

func (*NotificationReceiver) DeepCopyInto added in v0.9.3

func (in *NotificationReceiver) DeepCopyInto(out *NotificationReceiver)

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

type NotificationResult added in v0.9.6

type NotificationResult string

NotificationResult represents the result of sending notifications.

const (
	// NotificationResultSucceeded means success result of sending notifications.
	NotificationResultSucceeded NotificationResult = "Succeeded"

	// NotificationResultFailed means failure result of sending notifications.
	NotificationResultFailed NotificationResult = "Failed"
)

type NotificationStatus added in v0.9.6

type NotificationStatus struct {
	// Result represents the result of sending notifications.
	Result NotificationResult `json:"result"`
	// Message represents the detailed message for result.
	Message string `json:"message"`
}

NotificationStatus represents the status of sending notifications.

func (*NotificationStatus) DeepCopy added in v0.9.6

func (in *NotificationStatus) DeepCopy() *NotificationStatus

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

func (*NotificationStatus) DeepCopyInto added in v0.9.6

func (in *NotificationStatus) DeepCopyInto(out *NotificationStatus)

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

type NotificationType added in v0.9.3

type NotificationType string

NotificationType represents the way to send notifications.

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"`
	// Description of the parameter
	Description string `json:"description,omitempty"`
	// Required indicates whether this parameter is required
	Required bool `json:"required,omitempty"`
}

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 PresetVolume added in v0.9.3

type PresetVolume struct {
	// Type of the volume
	Type PresetVolumeType `json:"type"`
	// Path is path in host, PVC, or key path in Secret, ConfigMap.
	Path string `json:"path"`
	// MountPath is path in container that this preset volume will be mounted.
	MountPath string `json:"mountPath"`
	// SubPath is subpath to mount in container, for example, if MountPath is '/etc', SubPath is 'app.config', then
	// final file would be '/etc/app.config' in container
	SubPath string `json:"subPath"`
	// ObjectName is name of the source object if preset volume type is Secret, ConfigMap, PVC
	ObjectName *string `json:"objectName,omitempty"`
	// Scope defines the which containers to apply the preset volumes
	ContainerGroup ContainerGroup `json:"containerGroup"`
}

PresetVolume defines a preset volume

func (*PresetVolume) DeepCopy added in v0.9.3

func (in *PresetVolume) DeepCopy() *PresetVolume

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

func (*PresetVolume) DeepCopyInto added in v0.9.3

func (in *PresetVolume) DeepCopyInto(out *PresetVolume)

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

type PresetVolumeType added in v0.9.3

type PresetVolumeType string

PresetVolumeType is type of preset volumes, HostPath, PV supported.

const (
	// PresetVolumeTypeHostPath ...
	PresetVolumeTypeHostPath PresetVolumeType = "HostPath"
	// PresetVolumeTypePVC ...
	PresetVolumeTypePVC PresetVolumeType = "PVC"
	// PresetVolumeTypeSecret ...
	PresetVolumeTypeSecret PresetVolumeType = "Secret"
	// PresetVolumeTypeConfigMap ...
	PresetVolumeTypeConfigMap PresetVolumeType = "ConfigMap"
)

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"`
	// Status is status of the project, it holds statistics info of a project
	Status *ProjectStatus `json:"status,omitempty"`
}

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 ProjectStatus added in v0.9.6

type ProjectStatus struct {
	WorkflowCount int `json:"workflowCount"`
}

ProjectStatus represents status of project

func (*ProjectStatus) DeepCopy added in v0.9.6

func (in *ProjectStatus) DeepCopy() *ProjectStatus

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

func (*ProjectStatus) DeepCopyInto added in v0.9.6

func (in *ProjectStatus) DeepCopyInto(out *ProjectStatus)

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"`
	// Type is type of the resource, for example, Git, Image
	Type string `json:"type"`
	// 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 string `json:"type"`
	// Persistent resource to PVC.
	Persistent *Persistent `json:"persistent"`
	// Parameters of the resource
	Parameters []ParameterItem `json:"parameters"`
	// SupportedOperations defines what operations the resource type supported,
	// it's only used to register a resource type. When you create a resource for
	// workflow, just ignore it.
	SupportedOperations []string `json:"operations"`
	// IntegrationBind binds the resource type to integration (represent a external data source).
	// It's used when define a resource type.
	IntegrationBind *IntegrationBind `json:"bind,omitempty"`
}

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 SCMTrigger added in v0.9.3

type SCMTrigger struct {
	// Secret represents the secret of integrated SCM.
	Secret string `json:"secret"`
	// Repo represents full repo name without server address.
	// for GitHub, GitLab, Bitbucket, it is ordinarily in format of 'owner/repo-name',
	// for SVN, it is stored of the RepoUUID of the SVN repo. you can get the SVN repo
	// UUID by command:
	//
	// 'svn info --show-item repos-uuid --username {user} --password {password} --non-interactive
	// --trust-server-cert-failures unknown-ca,cn-mismatch,expired,not-yet-valid,other
	// --no-auth-cache {remote-svn-address}'
	Repo string `json:"repo"`
	// SCMTriggerPolicy represents trigger policies for SCM events.
	SCMTriggerPolicy `json:",inline"`
}

SCMTrigger represents the SCM trigger policy.

func (*SCMTrigger) DeepCopy added in v0.9.3

func (in *SCMTrigger) DeepCopy() *SCMTrigger

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

func (*SCMTrigger) DeepCopyInto added in v0.9.3

func (in *SCMTrigger) DeepCopyInto(out *SCMTrigger)

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

type SCMTriggerBasic added in v0.9.3

type SCMTriggerBasic struct {
	// Enabled represents whether enable this policy.
	Enabled bool `json:"enabled"`
}

SCMTriggerBasic represents basic config for SCM trigger policy.

func (*SCMTriggerBasic) DeepCopy added in v0.9.3

func (in *SCMTriggerBasic) DeepCopy() *SCMTriggerBasic

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

func (*SCMTriggerBasic) DeepCopyInto added in v0.9.3

func (in *SCMTriggerBasic) DeepCopyInto(out *SCMTriggerBasic)

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

type SCMTriggerPolicy added in v0.9.3

type SCMTriggerPolicy struct {
	// Push represents trigger policy for push events.
	Push SCMTriggerPush `json:"push"`
	// TagRelease represents trigger policy for tag release events.
	TagRelease SCMTriggerTagRelease `json:"tagRelease"`
	// PullRequest represents trigger policy for pull request events.
	PullRequest SCMTriggerPullRequest `json:"pullRequest"`
	// PullRequestComment represents trigger policy for pull request comment events.
	PullRequestComment SCMTriggerPullRequestComment `json:"pullRequestComment"`
	// PostCommit represents trigger policy for post commit events.
	PostCommit SCMTriggerPostCommit `json:"postCommit"`
}

SCMTriggerPolicy represents trigger policies for SCM events. Supports 4 events: push, tag release, pull request and pull request comment.

func (*SCMTriggerPolicy) DeepCopy added in v0.9.3

func (in *SCMTriggerPolicy) DeepCopy() *SCMTriggerPolicy

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

func (*SCMTriggerPolicy) DeepCopyInto added in v0.9.3

func (in *SCMTriggerPolicy) DeepCopyInto(out *SCMTriggerPolicy)

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

type SCMTriggerPostCommit added in v0.9.6

type SCMTriggerPostCommit struct {
	SCMTriggerBasic `json:",inline"`

	// RootURL represents SVN repository root url, this root is retrieved by
	//
	// 'svn info --show-item repos-root-url --username {user} --password {password} --non-interactive
	// --trust-server-cert-failures unknown-ca,cn-mismatch,expired,not-yet-valid,other
	// --no-auth-cache {remote-svn-address}'
	//
	// e.g: http://192.168.21.97/svn/caicloud
	RootURL string `json:"rootURL"`

	// WorkflowURL represents repository url of the workflow that the wrokflowTrigger related to,
	// Cyclone will checkout code from this URL while executing WorkflowRun.
	// e.g: http://192.168.21.97/svn/caicloud/cyclone
	WorkflowURL string `json:"workflowURL"`
}

SCMTriggerPostCommit represents trigger policy for post commit events.

func (*SCMTriggerPostCommit) DeepCopy added in v0.9.6

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

func (*SCMTriggerPostCommit) DeepCopyInto added in v0.9.6

func (in *SCMTriggerPostCommit) DeepCopyInto(out *SCMTriggerPostCommit)

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

type SCMTriggerPullRequest added in v0.9.3

type SCMTriggerPullRequest struct {
	SCMTriggerBasic `json:",inline"`

	// Branches represents the pr target branches list to filter PullRequest events.
	Branches []string `json:"branches"`
}

SCMTriggerPullRequest represents trigger policy for pull request events.

func (*SCMTriggerPullRequest) DeepCopy added in v0.9.3

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

func (*SCMTriggerPullRequest) DeepCopyInto added in v0.9.3

func (in *SCMTriggerPullRequest) DeepCopyInto(out *SCMTriggerPullRequest)

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

type SCMTriggerPullRequestComment added in v0.9.3

type SCMTriggerPullRequestComment struct {
	SCMTriggerBasic `json:",inline"`
	// Comments represents the comment lists to filter pull request comment events.
	Comments []string `json:"comments"`
}

SCMTriggerPullRequestComment represents trigger policy for pull request comment events.

func (*SCMTriggerPullRequestComment) DeepCopy added in v0.9.3

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

func (*SCMTriggerPullRequestComment) DeepCopyInto added in v0.9.3

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

type SCMTriggerPush added in v0.9.3

type SCMTriggerPush struct {
	SCMTriggerBasic `json:",inline"`
	// Branches represents the branch lists to filter push events.
	Branches []string `json:"branches"`
}

SCMTriggerPush represents trigger policy for push events.

func (*SCMTriggerPush) DeepCopy added in v0.9.3

func (in *SCMTriggerPush) DeepCopy() *SCMTriggerPush

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

func (*SCMTriggerPush) DeepCopyInto added in v0.9.3

func (in *SCMTriggerPush) DeepCopyInto(out *SCMTriggerPush)

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

type SCMTriggerTagRelease added in v0.9.3

type SCMTriggerTagRelease struct {
	SCMTriggerBasic `json:",inline"`
}

SCMTriggerTagRelease represents trigger policy for tag release events.

func (*SCMTriggerTagRelease) DeepCopy added in v0.9.3

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

func (*SCMTriggerTagRelease) DeepCopyInto added in v0.9.3

func (in *SCMTriggerTagRelease) DeepCopyInto(out *SCMTriggerTagRelease)

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

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"`
	// Trivial indicates whether this stage is critical in the workflow. If set to true, it means the workflow
	// can tolerate failure of this stage. In this case, all other stages can continue to execute and the overall
	// status of the workflow execution can still be succeed.
	Trivial bool `json:"trivial"`
}

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"`
	// Delegation kind workload, this stage would be executed externally.
	Delegation *DelegationWorkload `json:"delegation,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"`
	// Stages that this stage depends on.
	Depends []string `json:"depends"`
	// Trivial indicates whether this stage is critical in the workflow. If set to true, it means the workflow
	// can tolerate failure of this stage. In this case, all other stages can continue to execute and the overall
	// status of the workflow execution can still be succeed.
	Trivial bool `json:"trivial"`
}

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 {
	// Phase with value: Running, Waiting, Completed, Error
	Phase StatusPhase `json:"phase"`

	// 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 StatusPhase added in v0.9.3

type StatusPhase string

StatusPhase represents the phase of stage status or workflowrun status.

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 StatusPhase = "Pending"
	// StatusRunning means Stage or WorkflowRun is running.
	StatusRunning StatusPhase = "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 proceed.
	StatusWaiting StatusPhase = "Waiting"
	// StatusSucceeded means Stage or WorkflowRun gotten completed without errors.
	StatusSucceeded StatusPhase = "Succeeded"
	// StatusFailed indicates something wrong in the execution of Stage or WorkflowRun.
	StatusFailed StatusPhase = "Failed"
	// StatusCancelled indicates WorkflowRun have been cancelled.
	StatusCancelled StatusPhase = "Cancelled"
)

type TLSClientConfig added in v0.9.6

type TLSClientConfig struct {
	// Server should be accessed without verifying the TLS certificate. For testing only.
	Insecure bool `json:"insecure,omitempty" bson:"insecure"`

	// CAFile is the trusted root certificates for server
	CAFile string `json:"caFile,omitempty" bson:"caFile"`

	// CAData holds PEM-encoded bytes (typically read from a root certificates bundle).
	// CAData takes precedence over CAFile
	CAData []byte `json:"caData,omitempty" bson:"caData"`
}

TLSClientConfig contains settings to enable transport layer security

func (*TLSClientConfig) DeepCopy added in v0.9.6

func (in *TLSClientConfig) DeepCopy() *TLSClientConfig

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

func (*TLSClientConfig) DeepCopyInto added in v0.9.6

func (in *TLSClientConfig) DeepCopyInto(out *TLSClientConfig)

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"

	// TriggerTypeSCM indicates SCM trigger
	TriggerTypeSCM TriggerType = "SCM"

	// 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"`
	// PresetVolumes volumes are preset volumes that will be mounted to all stage pods. For the moment, two kinds
	// of volumes supported, namely HostPath, PV. Users can make use of preset volumes to inject timezone, certificates
	// from host to containers, or mount data from PV to be used in containers.
	PresetVolumes []PresetVolume `json:"volumes,omitempty"`
	// GlobalVariables are global variables that can be used in all stages within the workflow in a run. Different to
	// global values defined in workflow, values defined here MUST be concrete value (string only for the moment). We
	// can regard global variables in workflow as value templates (for example, $(random:5)), and final values must be
	// populated in workflow run.
	// Values defined here will override those defined in the workflow. If a variable is defined in workflow but not here,
	// it would be populated (final value generated) here when workflowrun created by workflowrun controller.
	GlobalVariables []GlobalVariable `json:"globalVariables,omitempty"`
}

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"`
	// Notifications represents the status of sending notifications.
	Notifications map[string]NotificationStatus `json:"notifications,omitempty"`
}

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"`

	// Notification represents the notification config of workflowrun result.
	Notification Notification `json:"notification,omitempty"`

	// GlobalVariables are global variables that can be used in stages or resources parameters. For example, a
	// global variable 'IMAGE_TAG' set here can be used in resource parameters as '${variables.IMAGE_TAG}. Format
	// for the variable reference is ${variables.<variable_name>}
	GlobalVariables []GlobalVariable `json:"globalVariables,omitempty"`
}

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"`
	// Cron represents cron trigger config.
	Cron CronTrigger `json:"cron,omitempty"`
	// SCM represents webhook trigger config.
	SCM SCMTrigger `json:"scm,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 {
	// Count represents triggered times.
	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