process

package
v1.4.4 Latest Latest
Warning

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

Go to latest
Published: Jun 27, 2022 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Auxiliary

type Auxiliary struct {
	Ins model.Instance
	// Type will be used to mark definition label for OAM runtime to get the CRD
	// It's now required for trait and main workload object. Extra workload CR object will not have the type.
	Type string

	// Workload or trait with multiple `outputs` will have a name, if name is empty, than it's the main of this type.
	Name string
}

Auxiliary are objects rendered by definition template. the format for auxiliary resource is always: `outputs.<resourceName>`, it can be auxiliary workload or trait

type AuxiliaryHook

type AuxiliaryHook interface {
	Exec(Context, []Auxiliary) error
}

AuxiliaryHook defines function to be invoked before appending auxiliaries to a process.Context

type AuxiliaryHookFn

type AuxiliaryHookFn func(Context, []Auxiliary) error

AuxiliaryHookFn implements AuxiliaryHook interface

func (AuxiliaryHookFn) Exec

func (fn AuxiliaryHookFn) Exec(ctx Context, auxs []Auxiliary) error

Exec will be invoked before appending 'auxs' into ctx.Auxiliaries

type BaseHook

type BaseHook interface {
	Exec(Context, model.Instance) error
}

BaseHook defines function to be invoked before setting base to a process.Context

type BaseHookFn

type BaseHookFn func(Context, model.Instance) error

BaseHookFn implements BaseHook interface

func (BaseHookFn) Exec

func (fn BaseHookFn) Exec(ctx Context, base model.Instance) error

Exec will be invoked before settiing 'base' into ctx.Base

type Context

type Context interface {
	SetBase(base model.Instance) error
	AppendAuxiliaries(auxiliaries ...Auxiliary) error
	Output() (model.Instance, []Auxiliary)
	BaseContextFile() string
	ExtendedContextFile() string
	BaseContextLabels() map[string]string
	SetParameters(params map[string]interface{})
	PushData(key string, data interface{})
	GetCtx() context.Context
	SetCtx(context.Context)
}

Context defines Rendering Context Interface

func NewContext

func NewContext(data ContextData) Context

NewContext create render templateContext

type ContextData added in v1.2.5

type ContextData struct {
	Namespace       string
	AppName         string
	CompName        string
	AppRevisionName string
	WorkflowName    string
	PublishVersion  string

	Ctx            context.Context
	BaseHooks      []BaseHook
	AuxiliaryHooks []AuxiliaryHook
	Components     []common.ApplicationComponent

	AppLabels      map[string]string
	AppAnnotations map[string]string
}

ContextData is the core data of process context

type RequiredSecrets

type RequiredSecrets struct {
	Namespace   string
	Name        string
	ContextName string
	Data        map[string]interface{}
}

RequiredSecrets is used to store all secret names which are generated by cloud resource components and required by current component

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL