cfg

package
v0.2.13 Latest Latest
Warning

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

Go to latest
Published: Feb 8, 2024 License: MIT Imports: 15 Imported by: 3

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Load

func Load(cfg any, opts ...Option) error

Load environment variables from `os env`, `.env` file and pass it to struct.

For local development use `.env` file from root project.

Load also call a `Validate` method.

Example:

var config internalConfig.Config
if err := cfg.Load(&config); err != nil {
	log.Fatalf("could not load configuration: %v", err)
}

func LoadForTests added in v0.0.10

func LoadForTests(cfg any, opts ...Option) error

LoadForTests environment variables from `os env`, `.env` file and pass it to struct for tests.

Disabled flags detection and any cli features.

For local development use `.env` file from root project.

LoadForTests also call a `Validate` method.

Example:

var config internalConfig.Config
if err := cfg.Load(&config); err != nil {
	log.Fatalf("could not load configuration: %v", err)
}

Types

type Option

type Option func(*options)

func WithContext

func WithContext(v context.Context) Option

func WithEnvFile

func WithEnvFile(v string) Option

func WithEnvPath

func WithEnvPath(v string) Option

func WithValidate

func WithValidate(v bool) Option

func WithValidateFuncs

func WithValidateFuncs(items ...ValidateFn) Option

func WithVersion

func WithVersion(v string) Option

type ValidateFn

type ValidateFn struct {
	Tag                      string
	Fn                       validator.Func
	CallValidationEvenIfNull []bool
}

Jump to

Keyboard shortcuts

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