sqldb

package
v3.5.4 Latest Latest
Warning

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

Go to latest
Published: Jan 14, 2024 License: Apache-2.0 Imports: 25 Imported by: 20

Documentation

Index

Constants

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

Variables

This section is empty.

Functions

func ConfigureDBSession added in v3.4.6

func ConfigureDBSession(session db.Session, persistPool *config.ConnectionPool) db.Session

ConfigureDBSession configures the DB session

func CreateDBSession

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

CreateDBSession creates the dB session

func CreateMySQLDBSession

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

CreateMySQLDBSession creates Mysql DB session

func CreatePostGresDBSession

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

CreatePostGresDBSession creates postgresDB session

func GetTableName added in v3.4.8

func GetTableName(persistConfig *config.PersistConfig) (string, error)

Types

type Migrate

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

func NewMigrate

func NewMigrate(session db.Session, 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) (map[string][]string, 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 db.Session, 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, name string, namePrefix string, minStartAt, maxStartAt time.Time, labelRequirements labels.Requirements, limit, offset int) (wfv1.Workflows, error)
	CountWorkflows(namespace string, name string, namePrefix string, minStartAt, maxStartAt time.Time, labelRequirements labels.Requirements) (int64, error)
	GetWorkflow(uid string, namespace string, name string) (*wfv1.Workflow, error)
	DeleteWorkflow(uid string) error
	DeleteExpiredWorkflows(ttl time.Duration) error
	IsEnabled() bool
	ListWorkflowsLabelKeys() (*wfv1.LabelKeys, error)
	ListWorkflowsLabelValues(key string) (*wfv1.LabelValues, error)
}
var NullWorkflowArchive WorkflowArchive = &nullWorkflowArchive{}

func NewWorkflowArchive

func NewWorkflowArchive(session db.Session, clusterName, managedNamespace string, instanceIDService instanceid.Service) WorkflowArchive

NewWorkflowArchive returns a new workflowArchive

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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