run

package
v0.21.0 Latest Latest
Warning

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

Go to latest
Published: Feb 22, 2026 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const (
	AuditStatusStarted   = "started"
	AuditStatusCompleted = "completed"
	AuditStatusFailed    = "failed"

	MigrationUpStartedEvent     = "migration.up.started"
	MigrationUpCompletedEvent   = "migration.up.completed"
	MigrationUpFailedEvent      = "migration.up.failed"
	MigrationFixUpEvent         = "migration.up.fixed"
	MigrationDownStartedEvent   = "migration.down.started"
	MigrationDownCompletedEvent = "migration.down.completed"
	MigrationDownFailedEvent    = "migration.down.failed"
	MigrationFixDownEvent       = "migration.down.fixed"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Audited

type Audited struct {
	Raw    []plugin.DriverAuditLog
	Sets   map[string]*AuditedMigrationSet
	LastID int64
}

func (*Audited) EnsureMigrationSet

func (a *Audited) EnsureMigrationSet(name string) *AuditedMigrationSet

type AuditedMigration

type AuditedMigration struct {
	Name              string
	Version           MigrationVersion
	Status            string
	WasDuringRollback bool
}

type AuditedMigrationSet

type AuditedMigrationSet struct {
	Migrations map[MigrationVersion]*AuditedMigration
}

func (*AuditedMigrationSet) DeleteMigration

func (a *AuditedMigrationSet) DeleteMigration(version MigrationVersion)

func (*AuditedMigrationSet) EnsureMigration

func (a *AuditedMigrationSet) EnsureMigration(version MigrationVersion, name string) *AuditedMigration

type Builder

type Builder struct {
	// contains filtered or unexported fields
}

func NewBuilder

func NewBuilder(
	fs *config.Filesystem,
	parsed *config.ParsedConfig,
	registry *plugins.Registry,
) *Builder

func (*Builder) BuildConfig

func (b *Builder) BuildConfig() (*config.Config, *config.Errors)

func (*Builder) Validate

func (b *Builder) Validate(cfg *config.Config) *config.Errors

type Clock

type Clock interface {
	Now() time.Time
}

type Command

type Command any

type CommandAudit

type CommandAudit struct {
	Command

	Driver   string
	Set      string
	N        uint
	FullView bool
}

type CommandMigrateDown

type CommandMigrateDown struct {
	Command

	Driver  string
	Set     string
	Version string
}

type CommandMigrateFixDown

type CommandMigrateFixDown struct {
	Command

	Driver  string
	Set     string
	Version string
	Comment string
}

type CommandMigrateFixUp

type CommandMigrateFixUp struct {
	Command

	Driver  string
	Set     string
	Version string
	Comment string
}

type CommandMigrateStatus

type CommandMigrateStatus struct {
	Command

	Driver string
	Set    string
}

type CommandMigrateUp

type CommandMigrateUp struct {
	Command

	Driver string
	Set    string
}

type CurrentTime

type CurrentTime struct{}

func (*CurrentTime) Now

func (t *CurrentTime) Now() time.Time

type GenerateInitOptions

type GenerateInitOptions struct {
}

type GenerateMigrationOptions

type GenerateMigrationOptions struct {
}

type Generator

type Generator struct {
	// contains filtered or unexported fields
}

func NewGenerator

func NewGenerator(fs *config.Filesystem, tpls *tpls.Templates, timestampGenerator generators.TimestampGenerator) *Generator

func (*Generator) GenInit

func (g *Generator) GenInit(ctx context.Context, opts GenerateInitOptions) error

func (*Generator) GenMigration

func (g *Generator) GenMigration(ctx context.Context, opts GenerateMigrationOptions) error

type MigrateAuditOptions

type MigrateAuditOptions struct {
	Driver      *plugin.DriverInstance
	Set         *config.MigrationSet
	FilterLastN uint
}

type MigrateAuditResult

type MigrateAuditResult struct {
	Logs []plugin.DriverAuditLog
}

type MigrateDownOptions

type MigrateDownOptions struct {
	Driver  *plugin.DriverInstance
	Set     *config.MigrationSet
	Version string
}

type MigrateDownResult

type MigrateDownResult struct {
}

type MigrateFixDownOptions

type MigrateFixDownOptions struct {
	Driver  *plugin.DriverInstance
	Set     *config.MigrationSet
	Version string
	Comment string
}

type MigrateFixDownResult

type MigrateFixDownResult struct{}

type MigrateFixUpOptions

type MigrateFixUpOptions struct {
	Driver  *plugin.DriverInstance
	Set     *config.MigrationSet
	Version string
	Comment string
}

type MigrateFixUpResult

type MigrateFixUpResult struct {
}

type MigrateStatusOptions

type MigrateStatusOptions struct {
	Driver *plugin.DriverInstance
	Set    *config.MigrationSet
}

type MigrateStatusResult

type MigrateStatusResult struct {
	Rows []MigrationStatusResultSingle
}

type MigrateUpOptions

type MigrateUpOptions struct {
	Driver *plugin.DriverInstance
	Set    *config.MigrationSet
}

type MigrateUpResult

type MigrateUpResult struct {
	WasPending int
}

type MigrationStatusResultSingle

type MigrationStatusResultSingle struct {
	Migration string
	Status    string
	Version   string
}

type MigrationVersion

type MigrationVersion string

type Migrator

type Migrator struct {
	// contains filtered or unexported fields
}

func NewMigrator

func NewMigrator(fs *config.Filesystem, logger *fmtx.Logger, clock Clock) *Migrator

func (*Migrator) MigrateAudit

func (m *Migrator) MigrateAudit(ctx context.Context, cfg *config.Config, opts MigrateAuditOptions) (*MigrateAuditResult, error)

func (*Migrator) MigrateDown

func (m *Migrator) MigrateDown(ctx context.Context, cfg *config.Config, opts MigrateDownOptions) (*MigrateDownResult, error)

func (*Migrator) MigrateFixDown

func (m *Migrator) MigrateFixDown(ctx context.Context, cfg *config.Config, opts MigrateFixDownOptions) (*MigrateFixDownResult, error)

func (*Migrator) MigrateFixUp

func (m *Migrator) MigrateFixUp(ctx context.Context, cfg *config.Config, opts MigrateFixUpOptions) (*MigrateFixUpResult, error)

func (*Migrator) MigrateStatus

func (m *Migrator) MigrateStatus(ctx context.Context, cfg *config.Config, opts MigrateStatusOptions) (*MigrateStatusResult, error)

func (*Migrator) MigrateUp

func (m *Migrator) MigrateUp(ctx context.Context, cfg *config.Config, opts MigrateUpOptions) (*MigrateUpResult, error)
type Navigator struct {
	// contains filtered or unexported fields
}

Navigator abstracts the flow of the driver.

func NewNavigator

func NewNavigator(driver *plugin.DriverInstance, config *config.Config, execCtx plugin.DriverExecutionContext, clock Clock) *Navigator
func (n *Navigator) ComputeState(ctx context.Context, conn plugin.DriverConnection) (*Audited, error)
func (n *Navigator) Drive(ctx context.Context, conn plugin.DriverConnection, run func() error) error
func (n *Navigator) Open(ctx context.Context) (plugin.DriverConnection, func(), error)
func (n *Navigator) Ready(ctx context.Context, conn plugin.DriverConnection) error
func (n *Navigator) WithTx(ctx context.Context, conn plugin.DriverConnection, withTx bool, yield func(query plugin.DriverQuery) error) error

type Runner

type Runner struct {
	// contains filtered or unexported fields
}

func New

func New(
	fs *config.Filesystem,
	tpls *tpls.Templates,
	registry *plugins.Registry,
	logger *fmtx.Logger,
	clock Clock,
) *Runner

func (*Runner) ExecuteMigrateAudit

func (r *Runner) ExecuteMigrateAudit(ctx context.Context, cmd *CommandAudit) (*MigrateAuditResult, error)

func (*Runner) ExecuteMigrateDown

func (r *Runner) ExecuteMigrateDown(ctx context.Context, cmd *CommandMigrateDown) (*MigrateDownResult, error)

func (*Runner) ExecuteMigrateFixDown

func (r *Runner) ExecuteMigrateFixDown(ctx context.Context, cmd *CommandMigrateFixDown) (*MigrateFixDownResult, error)

func (*Runner) ExecuteMigrateFixUp

func (r *Runner) ExecuteMigrateFixUp(ctx context.Context, cmd *CommandMigrateFixUp) (*MigrateFixUpResult, error)

func (*Runner) ExecuteMigrateStatus

func (r *Runner) ExecuteMigrateStatus(ctx context.Context, cmd *CommandMigrateStatus) (*MigrateStatusResult, error)

func (*Runner) ExecuteMigrateUp

func (r *Runner) ExecuteMigrateUp(ctx context.Context, cmd *CommandMigrateUp) (*MigrateUpResult, error)

func (*Runner) UseConfig

func (r *Runner) UseConfig() (*config.Config, error)

func (*Runner) UseDriver

func (r *Runner) UseDriver(cfg *config.Config, name string) (*plugin.DriverInstance, error)

func (*Runner) UseMigrationSet

func (r *Runner) UseMigrationSet(cfg *config.Config, name string) (*config.MigrationSet, error)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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