Documentation
      ¶
    
    
  
    
  
    Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ArtifactRepository ¶
type ArtifactRepository struct {
	// ArchiveLogs enables log archiving
	ArchiveLogs *bool `json:"archiveLogs,omitempty"`
	// S3 stores artifact in a S3-compliant object store
	S3 *S3ArtifactRepository `json:"s3,omitempty"`
	// Artifactory stores artifacts to JFrog Artifactory
	Artifactory *ArtifactoryArtifactRepository `json:"artifactory,omitempty"`
	// HDFS stores artifacts in HDFS
	HDFS *HDFSArtifactRepository `json:"hdfs,omitempty"`
}
    ArtifactRepository represents a artifact repository in which a controller will store its artifacts
func (*ArtifactRepository) IsArchiveLogs ¶
func (a *ArtifactRepository) IsArchiveLogs() bool
type ArtifactoryArtifactRepository ¶
type ArtifactoryArtifactRepository struct {
	wfv1.ArtifactoryAuth `json:",inline"`
	// RepoURL is the url for artifactory repo.
	RepoURL string `json:"repoURL,omitempty"`
}
    ArtifactoryArtifactRepository defines the controller configuration for an artifactory artifact repository
type ConnectionPool ¶
type HDFSArtifactRepository ¶
type HDFSArtifactRepository struct {
	wfv1.HDFSConfig `json:",inline"`
	// PathFormat is defines the format of path to store a file. Can reference workflow variables
	PathFormat string `json:"pathFormat,omitempty"`
	// Force copies a file forcibly even if it exists (default: false)
	Force bool `json:"force,omitempty"`
}
    HDFSArtifactRepository defines the controller configuration for an HDFS artifact repository
type KubeConfig ¶
type KubeConfig struct {
	// SecretName of the kubeconfig secret
	// may not be empty if kuebConfig specified
	SecretName string `json:"secretName"`
	// SecretKey of the kubeconfig in the secret
	// may not be empty if kubeConfig specified
	SecretKey string `json:"secretKey"`
	// VolumeName of kubeconfig, default to 'kubeconfig'
	VolumeName string `json:"volumeName,omitempty"`
	// MountPath of the kubeconfig secret, default to '/kube/config'
	MountPath string `json:"mountPath,omitempty"`
}
    KubeConfig is used for wait & init sidecar containers to communicate with a k8s apiserver by a outofcluster method, it is used when the workflow controller is in a different cluster with the workflow workloads
type MySQLConfig ¶
type MySQLConfig struct {
	Host           string                  `json:"host"`
	Port           string                  `json:"port"`
	Database       string                  `json:"database"`
	TableName      string                  `json:"tableName"`
	Options        map[string]string       `json:"options"`
	UsernameSecret apiv1.SecretKeySelector `json:"userNameSecret"`
	PasswordSecret apiv1.SecretKeySelector `json:"passwordSecret"`
}
    type PersistConfig ¶
type PersistConfig struct {
	NodeStatusOffload bool `json:"nodeStatusOffLoad,omitempty"`
	// Archive workflows to persistence.
	Archive        bool              `json:"archive,omitempty"`
	ClusterName    string            `json:"clusterName,omitempty"`
	ConnectionPool *ConnectionPool   `json:"connectionPool"`
	PostgreSQL     *PostgreSQLConfig `json:"postgresql,omitempty"`
	MySQL          *MySQLConfig      `json:"mysql,omitempty"`
}
    func (PersistConfig) GetClusterName ¶
func (c PersistConfig) GetClusterName() string
type PostgreSQLConfig ¶
type PostgreSQLConfig struct {
	Host           string                  `json:"host"`
	Port           string                  `json:"port"`
	Database       string                  `json:"database"`
	TableName      string                  `json:"tableName"`
	UsernameSecret apiv1.SecretKeySelector `json:"userNameSecret"`
	PasswordSecret apiv1.SecretKeySelector `json:"passwordSecret"`
	SSL            bool                    `json:"ssl,omitempty"`
}
    type S3ArtifactRepository ¶
type S3ArtifactRepository struct {
	wfv1.S3Bucket `json:",inline"`
	// KeyFormat is defines the format of how to store keys. Can reference workflow variables
	KeyFormat string `json:"keyFormat,omitempty"`
	// KeyPrefix is prefix used as part of the bucket key in which the controller will store artifacts.
	// DEPRECATED. Use KeyFormat instead
	KeyPrefix string `json:"keyPrefix,omitempty"`
}
    S3ArtifactRepository defines the controller configuration for an S3 artifact repository
type WorkflowControllerConfig ¶
type WorkflowControllerConfig struct {
	// ExecutorImage is the image name of the executor to use when running pods
	// DEPRECATED: use --executor-image flag to workflow-controller instead
	ExecutorImage string `json:"executorImage,omitempty"`
	// ExecutorImagePullPolicy is the imagePullPolicy of the executor to use when running pods
	// DEPRECATED: use `executor.imagePullPolicy` in configmap instead
	ExecutorImagePullPolicy string `json:"executorImagePullPolicy,omitempty"`
	// Executor holds container customizations for the executor to use when running pods
	Executor *apiv1.Container `json:"executor,omitempty"`
	// ExecutorResources specifies the resource requirements that will be used for the executor sidecar
	// DEPRECATED: use `executor.resources` in configmap instead
	ExecutorResources *apiv1.ResourceRequirements `json:"executorResources,omitempty"`
	// KubeConfig specifies a kube config file for the wait & init containers
	KubeConfig *KubeConfig `json:"kubeConfig,omitempty"`
	// ContainerRuntimeExecutor specifies the container runtime interface to use, default is docker
	ContainerRuntimeExecutor string `json:"containerRuntimeExecutor,omitempty"`
	// KubeletPort is needed when using the kubelet containerRuntimeExecutor, default to 10250
	KubeletPort int `json:"kubeletPort,omitempty"`
	// KubeletInsecure disable the TLS verification of the kubelet containerRuntimeExecutor, default to false
	KubeletInsecure bool `json:"kubeletInsecure,omitempty"`
	// ArtifactRepository contains the default location of an artifact repository for container artifacts
	ArtifactRepository ArtifactRepository `json:"artifactRepository,omitempty"`
	// Namespace is a label selector filter to limit the controller's watch to a specific namespace
	// DEPRECATED: support will be remove in a future release
	Namespace string `json:"namespace,omitempty"`
	// InstanceID is a label selector to limit the controller's watch to a specific instance. It
	// contains an arbitrary value that is carried forward into its pod labels, under the key
	// workflows.argoproj.io/controller-instanceid, for the purposes of workflow segregation. This
	// enables a controller to only receive workflow and pod events that it is interested about,
	// in order to support multiple controllers in a single cluster, and ultimately allows the
	// controller itself to be bundled as part of a higher level application. If omitted, the
	// controller watches workflows and pods that *are not* labeled with an instance id.
	InstanceID string `json:"instanceID,omitempty"`
	MetricsConfig metrics.PrometheusConfig `json:"metricsConfig,omitempty"`
	TelemetryConfig metrics.PrometheusConfig `json:"telemetryConfig,omitempty"`
	// Parallelism limits the max total parallel workflows that can execute at the same time
	Parallelism int `json:"parallelism,omitempty"`
	// Persistence contains the workflow persistence DB configuration
	Persistence *PersistConfig `json:"persistence,omitempty"`
	// Config customized Docker Sock path
	DockerSockPath string `json:"dockerSockPath,omitempty"`
}
    WorkflowControllerConfig contain the configuration settings for the workflow controller