Version: v3.0.1 Latest Latest

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

Go to latest
Published: Feb 23, 2021 License: Apache-2.0 Imports: 25 Imported by: 0




View Source
const (
	MySQL    dbType = "mysql"
	Postgres dbType = "postgres"
View Source
const OffloadNodeStatusDisabled = "Workflow has offloaded nodes, but offloading has been disabled"


This section is empty.


func CreateDBSession

func CreateDBSession(kubectlConfig kubernetes.Interface, namespace string, persistConfig *config.PersistConfig) (sqlbuilder.Database, string, error)

CreateDBSession creates the dB session

func CreateMySQLDBSession

func CreateMySQLDBSession(kubectlConfig kubernetes.Interface, namespace string, cfg *config.MySQLConfig, persistPool *config.ConnectionPool) (sqlbuilder.Database, string, error)

CreateMySQLDBSession creates Mysql DB session

func CreatePostGresDBSession

func CreatePostGresDBSession(kubectlConfig kubernetes.Interface, namespace string, cfg *config.PostgreSQLConfig, persistPool *config.ConnectionPool) (sqlbuilder.Database, string, error)

CreatePostGresDBSession creates postgresDB session


type Migrate

type Migrate interface {
	Exec(ctx context.Context) error

func NewMigrate

func NewMigrate(session sqlbuilder.Database, clusterName string, tableName string) Migrate

type OffloadNodeStatusRepo

type OffloadNodeStatusRepo interface {
	Save(uid, namespace string, nodes wfv1.Nodes) (string, error)
	Get(uid, version string) (wfv1.Nodes, error)
	List(namespace string) (map[UUIDVersion]wfv1.Nodes, error)
	ListOldOffloads(namespace string) ([]UUIDVersion, error)
	Delete(uid, version string) error
	IsEnabled() bool
var (
	ExplosiveOffloadNodeStatusRepo OffloadNodeStatusRepo = &explosiveOffloadNodeStatusRepo{}
	OffloadNotSupportedError                             = fmt.Errorf("offload node status is not supported")

func NewOffloadNodeStatusRepo

func NewOffloadNodeStatusRepo(session sqlbuilder.Database, clusterName, tableName string) (OffloadNodeStatusRepo, error)

type UUIDVersion

type UUIDVersion struct {
	UID     string `db:"uid"`
	Version string `db:"version"`

type WorkflowArchive

type WorkflowArchive interface {
	ArchiveWorkflow(wf *wfv1.Workflow) error
	// list workflows, with the most recently started workflows at the beginning (i.e. index 0 is the most recent)
	ListWorkflows(namespace string, minStartAt, maxStartAt time.Time, labelRequirements labels.Requirements, limit, offset int) (wfv1.Workflows, error)
	GetWorkflow(uid string) (*wfv1.Workflow, error)
	DeleteWorkflow(uid string) error
	DeleteExpiredWorkflows(ttl time.Duration) error
	IsEnabled() bool
var NullWorkflowArchive WorkflowArchive = &nullWorkflowArchive{}

func NewWorkflowArchive

func NewWorkflowArchive(session sqlbuilder.Database, clusterName, managedNamespace string, instanceIDService instanceid.Service) WorkflowArchive

NewWorkflowArchive returns a new workflowArchive


Path Synopsis

Jump to

Keyboard shortcuts

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