Documentation ¶
Index ¶
- Variables
- func FindRetryNode(nodes wfv1.Nodes, nodeID string) *wfv1.NodeStatus
- func GetRequeueTime() time.Duration
- type RetryTweak
- type TaskResults
- type WorkflowController
- func (wfc *WorkflowController) GetManagedNamespace() string
- func (wfc *WorkflowController) Healthz(w http.ResponseWriter, r *http.Request)
- func (wfc *WorkflowController) IsLeader() bool
- func (wfc *WorkflowController) Run(ctx context.Context, ...)
- func (wfc *WorkflowController) RunPrometheusServer(ctx context.Context, isDummy bool)
- func (wfc *WorkflowController) UpdateConfig(ctx context.Context)
Constants ¶
This section is empty.
Variables ¶
View Source
var ( // ErrDeadlineExceeded indicates the operation exceeded its deadline for execution ErrDeadlineExceeded = errors.New(errors.CodeTimeout, "Deadline exceeded") // ErrParallelismReached indicates this workflow reached its parallelism limit ErrParallelismReached = errors.New(errors.CodeForbidden, "Max parallelism reached") ErrResourceRateLimitReached = errors.New(errors.CodeForbidden, "resource creation rate-limit reached") // ErrTimeout indicates a specific template timed out ErrTimeout = errors.New(errors.CodeTimeout, "timeout") // ErrMaxDepthExceeded indicates that the maximum recursion depth was exceeded ErrMaxDepthExceeded = errors.New(errors.CodeTimeout, fmt.Sprintf("Maximum recursion depth exceeded. See %s", help.ConfigureMaximumRecursionDepth())) )
Functions ¶
func FindRetryNode ¶ added in v3.1.6
func FindRetryNode(nodes wfv1.Nodes, nodeID string) *wfv1.NodeStatus
FindRetryNode locates the closes retry node ancestor to nodeID
func GetRequeueTime ¶ added in v3.3.0
Types ¶
type RetryTweak ¶
RetryTweak is a 2nd order function interface for tweaking the retry
func RetryOnDifferentHost ¶
func RetryOnDifferentHost(retryNodeName string) RetryTweak
RetryOnDifferentHost append affinity with fail host to pod
type TaskResults ¶
type WorkflowController ¶
type WorkflowController struct { // Config is the workflow controller's configuration Config config.Config // contains filtered or unexported fields }
WorkflowController is the controller for workflow resources
func NewWorkflowController ¶
func NewWorkflowController(ctx context.Context, restConfig *rest.Config, kubeclientset kubernetes.Interface, wfclientset wfclientset.Interface, namespace, managedNamespace, executorImage, executorImagePullPolicy, executorLogFormat, configMap string, executorPlugins bool) (*WorkflowController, error)
NewWorkflowController instantiates a new WorkflowController
func (*WorkflowController) GetManagedNamespace ¶
func (wfc *WorkflowController) GetManagedNamespace() string
func (*WorkflowController) Healthz ¶ added in v3.0.5
func (wfc *WorkflowController) Healthz(w http.ResponseWriter, r *http.Request)
https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#define-a-liveness-http-request If we are in a state where there are any workflows that have not been reconciled in the last 2m, we've gone wrong.
func (*WorkflowController) IsLeader ¶ added in v3.6.0
func (wfc *WorkflowController) IsLeader() bool
func (*WorkflowController) Run ¶
func (wfc *WorkflowController) Run(ctx context.Context, wfWorkers, workflowTTLWorkers, podCleanupWorkers, cronWorkflowWorkers, wfArchiveWorkers int)
Run starts a Workflow resource controller
func (*WorkflowController) RunPrometheusServer ¶ added in v3.6.0
func (wfc *WorkflowController) RunPrometheusServer(ctx context.Context, isDummy bool)
func (*WorkflowController) UpdateConfig ¶
func (wfc *WorkflowController) UpdateConfig(ctx context.Context)
Source Files ¶
- agent.go
- artifact_gc.go
- cache_gc.go
- config.go
- container_set_template.go
- controller.go
- dag.go
- exec_control.go
- exit_handler.go
- healthz.go
- hooks.go
- http_template.go
- node_counters.go
- operator.go
- phase_node.go
- plugin_template.go
- pod_cleanup.go
- pod_cleanup_key.go
- rate_limiters.go
- retry_tweak.go
- scope.go
- serviceaccount.go
- steps.go
- taskresult.go
- taskset.go
- workflowpod.go
Click to show internal directories.
Click to hide internal directories.