sqldb

package
v3.6.2 Latest Latest
Warning

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

Go to latest
Published: Dec 2, 2024 License: Apache-2.0 Imports: 28 Imported by: 20

Documentation

Index

Constants

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

Variables

This section is empty.

Functions

func BuildArchivedWorkflowSelector added in v3.5.7

func BuildArchivedWorkflowSelector(selector db.Selector, tableName, labelTableName string, t dbType, options utils.ListOptions, count bool) (db.Selector, error)

func BuildWorkflowSelector added in v3.5.7

func BuildWorkflowSelector(in string, inArgs []any, tableName, labelTableName string, t dbType, options utils.ListOptions, count bool) (out string, outArgs []any, err error)

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(options sutils.ListOptions) (wfv1.Workflows, error)
	CountWorkflows(options sutils.ListOptions) (int64, error)
	GetWorkflow(uid string, namespace string, name string) (*wfv1.Workflow, error)
	GetWorkflowForEstimator(namespace string, requirements []labels.Requirement) (*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