pgutil

package
v0.0.0-...-f15602e Latest Latest
Warning

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

Go to latest
Published: Jun 17, 2024 License: MIT Imports: 10 Imported by: 0

Documentation

Overview

Package pgutil contains utilities for working with Postgres.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func MakeMigrate

func MakeMigrate(ctx context.Context, config *PostgresConfig) error

MakeMigrate applies migrations to the specified database.

func NewDatabase

func NewDatabase(ctx context.Context, config *PostgresConfig) (*sql.DB, error)

NewDatabase creates database connection and checks it.

Types

type PostgresConfig

type PostgresConfig struct {
	Host                 string        `envconfig:"HOST" required:"true"`
	Port                 int           `envconfig:"PORT" required:"true"`
	User                 string        `envconfig:"USER" required:"true"`
	Password             string        `envconfig:"PASSWORD" required:"true"`
	DatabaseName         string        `envconfig:"DATABASE_NAME" required:"true"`
	SSLMode              string        `envconfig:"SSL_MODE" required:"true"`
	MaxOpenConns         int           `envconfig:"MAX_OPEN_CONNS" required:"true"`
	ConnMaxLifetime      time.Duration `envconfig:"CONN_MAX_LIFETIME" required:"true"`
	MaxIdleConns         int           `envconfig:"MAX_IDLE_CONNS" required:"true"`
	ConnMaxIdleTime      time.Duration `envconfig:"CONN_MAX_IDLE_TIME"`
	PreferSimpleProtocol string        `envconfig:"PREFER_SIMPLE_PROTOCOL" required:"true"`
	StatementCacheMode   string        `envconfig:"STATEMENT_CACHE_MODE" required:"true"`
	ApplicationName      string        `envconfig:"APPLICATION_NAME" required:"true"`
}

PostgresConfig is a Postgres configuration.

Jump to

Keyboard shortcuts

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