Help us shape the future of Go! Take the 2026 Go Developer Survey

internal

package
v0.1.5 Latest Latest
Warning

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

Go to latest
Published: Mar 30, 2025 License: MIT Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MigrationUp = iota
	MigrationDown
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Database

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

func NewDatabase

func NewDatabase(dsn string) *Database

func (*Database) Close

func (d *Database) Close() error

func (*Database) CreateMigration

func (d *Database) CreateMigration(name string, migrationType config.MigrationType) error

func (*Database) Execute

func (d *Database) Execute(stmt string) error

func (*Database) GetMigrations

func (d *Database) GetMigrations(args ...any) ([]MigrationRec, error)

func (*Database) GetReadyMigrations

func (d *Database) GetReadyMigrations() (*[]MigrationRec, error)

func (*Database) GetVersion

func (d *Database) GetVersion() (version VersionInfo, err error)

func (*Database) SetMigrationStatus

func (d *Database) SetMigrationStatus(mid int, status MigrationStatus) error

func (*Database) StartTransaction

func (d *Database) StartTransaction() (tx *sql.Tx)

type DownMigration

type DownMigration func(sql.Tx) error

type IRegistry

type IRegistry interface {
	Register(name string, up func(Tx *sql.Tx) error, down func(Tx *sql.Tx) error) error
	Check(name string) bool
	Get(name string) *Migration
}
var Registry IRegistry

func NewRegistry

func NewRegistry() IRegistry

type Migration

type Migration struct {
	Name string
	Up   func(Tx *sql.Tx) error
	Down func(Tx *sql.Tx) error
}

type MigrationDirection

type MigrationDirection int

func (MigrationDirection) String

func (md MigrationDirection) String() string

type MigrationRec

type MigrationRec struct {
	ID      int
	Name    string
	Type    config.MigrationType
	Status  MigrationStatus
	LastRun time.Time
	Applied bool
}

type MigrationStatus

type MigrationStatus int
const (
	MigrationNew MigrationStatus = iota
	MigrationInProc
	MigrationError
	MigrationApplied
)

func (*MigrationStatus) Set

func (s *MigrationStatus) Set(value string) error

func (*MigrationStatus) String

func (s *MigrationStatus) String() string

type Migrator

type Migrator struct {
	Config    config.Config
	Direction MigrationDirection
	Database  *Database
}

func NewMigrator

func NewMigrator(cfg config.Config, dir MigrationDirection) *Migrator

func (*Migrator) ApplyMigration

func (m *Migrator) ApplyMigration(mg *MigrationRec) error

func (*Migrator) Close

func (m *Migrator) Close()

func (*Migrator) Migrate

func (m *Migrator) Migrate() error

func (*Migrator) ReadMigrationStatements

func (m *Migrator) ReadMigrationStatements(reader io.Reader) ([]string, error)

func (*Migrator) ReadMigrationStatementsFile

func (m *Migrator) ReadMigrationStatementsFile(filename string) ([]string, error)

type RegistryImpl

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

func (*RegistryImpl) Check

func (r *RegistryImpl) Check(name string) bool

func (*RegistryImpl) Get

func (r *RegistryImpl) Get(name string) *Migration

func (*RegistryImpl) Register

func (r *RegistryImpl) Register(name string, up func(Tx *sql.Tx) error, down func(Tx *sql.Tx) error) error

type UpMigration

type UpMigration func(sql.Tx) error

type VersionInfo

type VersionInfo struct {
	Version       int
	MigrationName string
}

Jump to

Keyboard shortcuts

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