Documentation
¶
Overview ¶
package zdpgo_env is a go port of the ruby dotenv library (https://github.com/bkeepers/dotenv)
Examples/readme can be found on the GitHub page at https://github.com/joho/godotenv
The TL;DR is that you make a .env file that looks something like
SOME_ENV_VAR=somevalue
and then in your go code you can call
godotenv.Load()
and all the env vars declared in .env will be available through os.Getenv("SOME_ENV_VAR")
Index ¶
- func EnvToStruct(v interface{}) error
- func Exec(filenames []string, cmd string, cmdArgs []string, overload bool) error
- func Load(filenames ...string) (err error)
- func Marshal(envMap map[string]string) (string, error)
- func Overload(filenames ...string) (err error)
- func Parse(r io.Reader) (map[string]string, error)
- func Read(filenames ...string) (envMap map[string]string, err error)
- func Unmarshal(str string) (envMap map[string]string, err error)
- func UnmarshalBytes(src []byte) (map[string]string, error)
- func Write(envMap map[string]string, filename string) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func EnvToStruct ¶ added in v0.1.4
func EnvToStruct(v interface{}) error
func Exec ¶ added in v0.1.1
Exec loads env vars from the specified filenames (empty map falls back to default) then executes the cmd specified.
Simply hooks up os.Stdin/err/out to the command and calls Run().
If you want more fine grained control over your command it's recommended that you use `Load()`, `Overload()` or `Read()` and the `os/exec` package yourself.
func Load ¶
Load 将读取您的env文件并将其加载到env中。 在程序开始时尽可能地调用这个函数(最好是在main中)。 如果你不带任何参数调用Load,它将默认加载当前路径中的.env。 你也可以告诉它加载哪些文件(可以有多个),比如:
zdpgo_env.Load("fileone", "filetwo")
重要的是要注意,它不会覆盖已经存在的env变量-考虑使用.env文件设置dev变量或合理的默认值。
func Marshal ¶ added in v0.1.1
Marshal outputs the given environment as a dotenv-formatted environment file. Each line is in the format: KEY="VALUE" where VALUE is backslash-escaped.
func Overload ¶ added in v0.1.1
Overload will read your env file(s) and load them into ENV for this process.
Call this function as close as possible to the start of your program (ideally in main).
If you call Overload without any args it will default to loading .env in the current path.
You can otherwise tell it which files to load (there can be more than one) like:
godotenv.Overload("fileone", "filetwo")
It's important to note this WILL OVERRIDE an env variable that already exists - consider the .env file to forcefully set all vars.
func Parse ¶ added in v0.1.1
Parse reads an env file from io.Reader, returning a map of keys and values.
func Read ¶ added in v0.1.1
Read all env (with same file loading semantics as Load) but return values as a map rather than automatically writing values into env
func Unmarshal ¶ added in v0.1.1
Unmarshal reads an env file from a string, returning a map of keys and values.
func UnmarshalBytes ¶ added in v0.1.4
UnmarshalBytes parses env file from byte slice of chars, returning a map of keys and values.
Types ¶
This section is empty.