Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func IsAlreadyExists ¶
Checks if the error is of type RemoteError and the ErrorCode is of type RemoteErrorAlreadyExists
func IsNotFound ¶
Checks if the error is of type RemoteError and the ErrorCode is of type RemoteErrorNotFound
func IsUserError ¶
Checks if the error is of type RemoteError and the ErrorCode is of type RemoteErrorUser
func IsWorkflowTerminated ¶ added in v0.10.0
func IsWorkflowTerminated(p core.WorkflowExecution_Phase) bool
IsWorkflowTerminated returns a true if the Workflow Phase is in a Terminal Phase, else returns a false
Types ¶
type AdminConfig ¶
type AdminConfig struct { // TPS indicates the maximum transactions per second to flyte admin from this client. // If it's zero, the created client will use DefaultTPS: 5 TPS int64 `json:"tps" pflag:",The maximum number of transactions per second to flyte admin from this client."` // Maximum burst for throttle. // If it's zero, the created client will use DefaultBurst: 10. Burst int `json:"burst" pflag:",Maximum burst for throttle"` MaxCacheSize int `json:"cacheSize" pflag:",Maximum cache in terms of number of items stored."` Workers int `json:"workers" pflag:",Number of parallel workers to work on the queue."` }
AdminConfig provides a "admin-launcher" section in core Flytepropeller configuration and can be used to configure the rate at which Flytepropeller can query for status of workflows in flyteadmin or create new executions
func GetAdminConfig ¶
func GetAdminConfig() *AdminConfig
func (AdminConfig) GetPFlagSet ¶
func (cfg AdminConfig) GetPFlagSet(prefix string) *pflag.FlagSet
GetPFlagSet will return strongly types pflags for all fields in AdminConfig and its nested types. The format of the flags is json-name.json-sub-name... etc.
type Executor ¶
type Executor interface { // Launch start an execution of a launchplan Launch(ctx context.Context, launchCtx LaunchContext, executionID *core.WorkflowExecutionIdentifier, launchPlanRef *core.Identifier, inputs *core.LiteralMap) error // GetStatus retrieves status of a LaunchPlan execution GetStatus(ctx context.Context, executionID *core.WorkflowExecutionIdentifier) (*admin.ExecutionClosure, *core.LiteralMap, error) // Kill a remote execution Kill(ctx context.Context, executionID *core.WorkflowExecutionIdentifier, reason string) error // Initialize initializes Executor. Initialize(ctx context.Context) error }
Executor interface to be implemented by the remote system that can allow workflow launching capabilities
type FlyteAdmin ¶ added in v0.7.0
func NewAdminLaunchPlanExecutor ¶
func NewAdminLaunchPlanExecutor(_ context.Context, client service.AdminServiceClient, syncPeriod time.Duration, cfg *AdminConfig, scope promutils.Scope) (FlyteAdmin, error)
func NewFailFastLaunchPlanExecutor ¶
func NewFailFastLaunchPlanExecutor() FlyteAdmin
type LaunchContext ¶
type LaunchContext struct { // Nesting level of the current workflow (parent) NestingLevel uint32 // Principal of the current workflow, so that billing can be tied correctly Principal string // If a node launched the execution, this specifies which node execution ParentNodeExecution *core.NodeExecutionIdentifier // If a node in recovery mode launched this execution, propagate recovery mode to the child execution. RecoveryExecution *core.WorkflowExecutionIdentifier // SecurityContext contains information from the parent execution about the security context. SecurityContext core.SecurityContext // MaxParallelism MaxParallelism uint32 // RawOutputDataConfig RawOutputDataConfig *admin.RawOutputDataConfig Annotations map[string]string Labels map[string]string Interruptible *bool OverwriteCache bool EnvironmentVariables map[string]string }
LaunchContext is a simple context that is used to start an execution of a LaunchPlan. It encapsulates enough parent information to tie the executions
type Reader ¶ added in v0.7.0
type Reader interface { // GetLaunchPlan gets the definition of a launch plan. This is primarily used to ensure all the TypedInterfaces match up before actually executing. GetLaunchPlan(ctx context.Context, launchPlanRef *core.Identifier) (*admin.LaunchPlan, error) }