Argo Workflows · Schema

io.argoproj.workflow.v1alpha1.WorkflowSpec

WorkflowSpec is the specification of a Workflow.

CNCFContainersData ProcessingKubernetesMachine LearningOpen SourceWorkflow Engine

Properties

Name Type Description
activeDeadlineSeconds integer Optional duration in seconds relative to the workflow start time which the workflow is allowed to run before the controller terminates the io.argoproj.workflow.v1alpha1. A value of zero is used to ter
affinity object Affinity sets the scheduling constraints for all pods in the io.argoproj.workflow.v1alpha1. Can be overridden by an affinity specified in the template
archiveLogs boolean ArchiveLogs indicates if the container logs should be archived
arguments object Arguments contain the parameters and artifacts sent to the workflow entrypoint Parameters are referencable globally using the 'workflow' variable prefix. e.g. {{io.argoproj.workflow.v1alpha1.parameter
artifactGC object ArtifactGC describes the strategy to use when deleting artifacts from completed or deleted workflows (applies to all output Artifacts unless Artifact.ArtifactGC is specified, which overrides this)
artifactRepositoryRef object ArtifactRepositoryRef specifies the configMap name and key containing the artifact repository config.
automountServiceAccountToken boolean AutomountServiceAccountToken indicates whether a service account token should be automatically mounted in pods. ServiceAccountName of ExecutorConfig must be specified if this value is false.
dnsConfig object PodDNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy.
dnsPolicy string Set DNS policy for workflow pods. Defaults to "ClusterFirst". Valid values are 'ClusterFirstWithHostNet', 'ClusterFirst', 'Default' or 'None'. DNS parameters given in DNSConfig will be merged with the
entrypoint string Entrypoint is a template reference to the starting point of the io.argoproj.workflow.v1alpha1.
executor object Executor holds configurations of executor containers of the io.argoproj.workflow.v1alpha1.
hooks object Hooks holds the lifecycle hook which is invoked at lifecycle of step, irrespective of the success, failure, or error status of the primary step
hostAliases array
hostNetwork boolean Host networking requested for this workflow pod. Default to false.
imagePullSecrets array ImagePullSecrets is a list of references to secrets in the same namespace to use for pulling any images in pods that reference this ServiceAccount. ImagePullSecrets are distinct from Secrets because S
metrics object Metrics are a list of metrics emitted from this Workflow
nodeSelector object NodeSelector is a selector which will result in all pods of the workflow to be scheduled on the selected node(s). This is able to be overridden by a nodeSelector specified in the template.
onExit string OnExit is a template reference which is invoked at the end of the workflow, irrespective of the success, failure, or error of the primary io.argoproj.workflow.v1alpha1.
parallelism integer Parallelism limits the max total parallel pods that can execute at the same time in a workflow
podDisruptionBudget object PodDisruptionBudget holds the number of concurrent disruptions that you allow for Workflow's Pods. Controller will automatically add the selector with workflow name, if selector is empty. Optional: De
podGC object PodGC describes the strategy to use when deleting completed pods
podMetadata object PodMetadata defines additional metadata that should be applied to workflow pods
podPriorityClassName string PriorityClassName to apply to workflow pods.
podSpecPatch string PodSpecPatch holds strategic merge patch to apply against the pod spec. Allows parameterization of container fields which are not strings (e.g. resource limits).
priority integer Priority is used if controller is configured to process limited number of workflows in parallel. Workflows with higher priority are processed first.
retryStrategy object RetryStrategy for all templates in the io.argoproj.workflow.v1alpha1.
schedulerName string Set scheduler name for all pods. Will be overridden if container/script template's scheduler name is set. Default scheduler will be used if neither specified.
securityContext object SecurityContext holds pod-level security attributes and common container settings. Optional: Defaults to empty. See type description for default values of each field.
serviceAccountName string ServiceAccountName is the name of the ServiceAccount to run all pods of the workflow as.
shutdown string Shutdown will shutdown the workflow according to its ShutdownStrategy
suspend boolean Suspend will suspend the workflow and prevent execution of any future steps in the workflow
synchronization object Synchronization holds synchronization lock configuration for this Workflow
templateDefaults object TemplateDefaults holds default template values that will apply to all templates in the Workflow, unless overridden on the template-level
templates array Templates is a list of workflow templates used in a workflow MaxItems is an artificial limit to limit CEL validation costs - see note at top of file
tolerations array Tolerations to apply to workflow pods.
ttlStrategy object TTLStrategy limits the lifetime of a Workflow that has finished execution depending on if it Succeeded or Failed. If this struct is set, once the Workflow finishes, it will be deleted after the time t
volumeClaimGC object VolumeClaimGC describes the strategy to use when deleting volumes from completed workflows
volumeClaimTemplates array VolumeClaimTemplates is a list of claims that containers are allowed to reference. The Workflow controller will create the claims at the beginning of the workflow and delete the claims upon completion
volumes array Volumes is a list of volumes that can be mounted by containers in a io.argoproj.workflow.v1alpha1.
workflowMetadata object WorkflowMetadata contains some metadata of the workflow to refer to
workflowTemplateRef object WorkflowTemplateRef holds a reference to a WorkflowTemplate for execution
View JSON Schema on GitHub