config

package
v0.0.0-...-bc6e940 Latest Latest
Warning

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

Go to latest
Published: Jun 30, 2023 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func LoadDotenv

func LoadDotenv(embedFS embed.FS, resourcePaths map[string]string) error

LoadDotenv is a helper function to load the dotenv file into environment variables

Types

type AppConfig

type AppConfig struct {
	// AppEnv is the application environment that determines `configs/<APP_ENV>.env` to load.
	AppEnv string `env:"APP_ENV" envDefault:"development"`

	// PrimaryDBUri is the primary database URI.
	PrimaryDBUri string `env:"PRIMARY_DB_URI"`

	// ServiceName is the application's service name.
	ServiceName string `env:"SERVICE_NAME" envDefault:"golang-rest-api"`

	// TracerCollectorAddress is the OpenTelemetry trace collector address.
	TracerCollectorAddress string `env:"TRACER_COLLECTOR_ADDRESS"`

	// NewRelicLicenseKey is the license key for New relic instrumentations
	NewRelicLicenseKey string `env:"NEWRELIC_LICENSE_KEY"`

	HTTPConfig struct {
		// Address is the HTTP server's address.
		Address string `env:"HTTP_ADDRESS"`

		// Enabled is the feature flag
		Enabled bool `env:"HTTP_ENABLED"`
	}

	HTTPSConfig struct {
		// Address is the HTTPS server's address.
		Address string `env:"HTTPS_ADDRESS"`

		// Enabled is the feature flag
		Enabled bool `env:"HTTPS_ENABLED"`
	}
}

AppConfig maps the environment variables into a struct.

func NewConfig

func NewConfig() (AppConfig, error)

NewConfig loads <APP_ENV> into Config struct.

Jump to

Keyboard shortcuts

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