env

package module
v1.1.0 Latest Latest
Warning

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

Go to latest
Published: Mar 1, 2022 License: MIT Imports: 3 Imported by: 25

README

go-env-default

Go Reference Go Report Card codecov Go Tests GitHub go.mod Go version

import "github.com/caitlinelfring/go-env-default"

A collection of helper go functions for accessing the value of environment variables with pre-defined default values, including type conversion.

Supports the following types:

  • string
  • bool
  • int
  • int64
  • float64
  • time.Duration

Supported Go versions:

  • 1.17
  • 1.16
  • 1.15

Usage

Example:

package main

import (
  "fmt"

  env "github.com/caitlinelfring/go-env-default"
)

func main() {
  fmt.Println(env.GetDefault("MY_ENV_VAR", "foo"))
}
$ go run main.go
foo
$ MY_ENV_VAR=bar go run main.go
bar

Documentation

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetBoolDefault

func GetBoolDefault(envVar string, defaultValue bool) bool

GetBoolDefault returns the boolean value of the environment variable, or a default value if the environment variable is not defined or is an empty string

Example
fmt.Println(GetBoolDefault("MY_ENV_VAR", true))
os.Setenv("MY_ENV_VAR", "false")
fmt.Println(GetBoolDefault("MY_ENV_VAR", true))
os.Unsetenv("MY_ENV_VAR")
Output:

true
false

func GetDefault

func GetDefault(envVar, defaultValue string) string

GetDefault returns the string value of the environment variable, or a default value if the environment variable is not defined or is an empty string

Example
fmt.Println(GetDefault("MY_ENV_VAR", "default"))
os.Setenv("MY_ENV_VAR", "custom")
fmt.Println(GetDefault("MY_ENV_VAR", "default"))
os.Unsetenv("MY_ENV_VAR")
Output:

default
custom

func GetDurationDefault

func GetDurationDefault(envVar string, defaultValue time.Duration) time.Duration

GetDurationDefault returns the time.Duration value of the environment variable, or a default value if the environment variable is not defined or is an empty string

Example
fmt.Println(GetDurationDefault("MY_ENV_VAR", time.Hour))
os.Setenv("MY_ENV_VAR", "60s")
fmt.Println(GetDurationDefault("MY_ENV_VAR", time.Hour))
os.Unsetenv("MY_ENV_VAR")
Output:

1h0m0s
1m0s

func GetFloatDefault

func GetFloatDefault(envVar string, defaultValue float64) float64

GetFloatDefault returns the float64 value of the environment variable, or a default value if the environment variable is not defined or is an empty string

Example
fmt.Println(GetFloatDefault("MY_ENV_VAR", 3.14))
os.Setenv("MY_ENV_VAR", "34.02")
fmt.Println(GetFloatDefault("MY_ENV_VAR", 3.14))
os.Unsetenv("MY_ENV_VAR")
Output:

3.14
34.02

func GetInt64Default

func GetInt64Default(envVar string, defaultValue int64) int64

GetInt64Default returns the int64 value of the environment variable, or a default value if the environment variable is not defined or is an empty string

Example
fmt.Println(GetInt64Default("MY_ENV_VAR", int64(12345678910)))
os.Setenv("MY_ENV_VAR", "100")
fmt.Println(GetInt64Default("MY_ENV_VAR", int64(12345678910)))
os.Unsetenv("MY_ENV_VAR")
Output:

12345678910
100

func GetIntDefault

func GetIntDefault(envVar string, defaultValue int) int

GetIntDefault returns the int value of the environment variable, or a default value if the environment variable is not defined or is an empty string

Example
fmt.Println(GetIntDefault("MY_ENV_VAR", 1))
os.Setenv("MY_ENV_VAR", "100")
fmt.Println(GetIntDefault("MY_ENV_VAR", 1))
os.Unsetenv("MY_ENV_VAR")
Output:

1
100

Types

This section is empty.

Jump to

Keyboard shortcuts

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