config

package
v0.0.0-...-d482384 Latest Latest
Warning

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

Go to latest
Published: Jan 24, 2021 License: MIT Imports: 1 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Load

func Load(filename string) error

Types

type Config

type Config struct {
	AppName            string `json:"app_name"             envconfig:"APP_NAME"             default:"hit-the-goal"`
	Port               string `json:"port"                 envconfig:"PORT"                 default:"8080"`
	LogPreset          string `json:"log_preset"           envconfig:"LOG_PRESET"           default:"development"`
	PaginationMaxLimit int64  `json:"pagination_max_limit" envconfig:"PAGINATION_MAX_LIMIT" default:"100"`

	Postgres Postgres `json:"postgres"`
	Redis    Redis    `json:"redis"`
}

func Get

func Get() *Config

type Postgres

type Postgres struct {
	Host         string       `json:"host"          envconfig:"POSTGRES_HOST"          default:"localhost"`
	Port         string       `json:"port"          envconfig:"POSTGRES_PORT"          default:"5432"`
	Database     string       `json:"database"      envconfig:"POSTGRES_DATABASE"      default:"goal"`
	User         string       `json:"user"          envconfig:"POSTGRES_USER"          default:"postgres"`
	Password     string       `json:"password"      envconfig:"POSTGRES_PASSWORD"      default:"secret"`
	Sslmode      string       `json:"sslmode"       envconfig:"POSTGRES_SSLMODE"       default:"disable"`
	PoolSize     int          `json:"pool_size"     envconfig:"POSTGRES_POOL_SIZE"     default:"10"`
	MaxRetries   int          `json:"max_retries"   envconfig:"POSTGRES_MAX_RETRIES"   default:"5"`
	ReadTimeout  cfg.Duration `json:"read_timeout"  envconfig:"POSTGRES_READ_TIMEOUT"  default:"10s"`
	WriteTimeout cfg.Duration `json:"write_timeout" envconfig:"POSTGRES_WRITE_TIMEOUT" default:"10s"`
}

type Redis

type Redis struct {
	Address  string `json:"address"   envconfig:"REDIS_ADDRESS"   default:"localhost:6379"`
	Password string `json:"password"  envconfig:"REDIS_PASSWORD"  default:"password"`
	PoolSize int    `json:"pool_size" envconfig:"REDIS_POOL_SIZE" default:"10"`
}

Jump to

Keyboard shortcuts

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