database

package
v0.0.0-...-d595cb9 Latest Latest
Warning

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

Go to latest
Published: Mar 16, 2021 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	Name               string `env:"DB_NAME" json:",omitempty"`
	User               string `env:"DB_USER" json:",omitempty"`
	Host               string `env:"DB_HOST, default=localhost" json:",omitempty"`
	Port               string `env:"DB_PORT, default=5432" json:",omitempty"`
	SSLMode            string `env:"DB_SSLMODE, default=require" json:",omitempty"`
	ConnectionTimeout  int    `env:"DB_CONNECT_TIMEOUT" json:",omitempty"`
	Password           string `env:"DB_PASSWORD" json:"-"` // ignored by zap's JSON formatter
	SSLCertPath        string `env:"DB_SSLCERT" json:",omitempty"`
	SSLKeyPath         string `env:"DB_SSLKEY" json:",omitempty"`
	SSLRootCertPath    string `env:"DB_SSLROOTCERT" json:",omitempty"`
	PoolMinConnections string `env:"DB_POOL_MIN_CONNS" json:",omitempty"`
	PoolMaxConnections string `env:"DB_POOL_MAX_CONNS" json:",omitempty"`
}

func (*Config) ConnectionURL

func (c *Config) ConnectionURL() string

func (*Config) DatabaseConfig

func (c *Config) DatabaseConfig() *Config

type DB

type DB struct {
	Pool *gorm.DB
}

func NewFromEnv

func NewFromEnv(ctx context.Context, cfg *Config) (*DB, error)

NewFromEnv sets up the database connections using the configuration in the process's environment variables. This should be called just once per server instance.

func (*DB) Close

func (db *DB) Close(ctx context.Context)

Close releases database connections.

func (*DB) Migrate

func (_db *DB) Migrate(ctx context.Context) error

Close releases database connections.

Jump to

Keyboard shortcuts

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