mirror of https://github.com/joho/godotenv.git
|
||
---|---|---|
fixtures | ||
.gitignore | ||
LICENCE | ||
README.md | ||
godotenv.go | ||
godotenv_test.go | ||
wercker.yml |
README.md
GoDotEnv 
A Go (golang) port of the Ruby dotenv project (which loads env vars from a .env file)
Installation
go get github.com/joho/godotenv
Usage
Add your application configuration to your .env
file in the root of your project:
S3_BUCKET=YOURS3BUCKET
SECRET_KEY=YOURSECRETKEYGOESHERE
Then in your Go app you can do something like
import (
"github.com/joho/godotenv"
"os"
)
err := godotenv.Load()
if err != nil {
os.Fatal("Error loading .env file")
}
s3Bucket := os.Getenv("S3_BUCKET")
secretKey := os.Getenv("SECRET_KEY")
While .env
in the project root is the default, you don't have to be constrained
_ := godotenv.Load("somerandomfile")
_ := godotenv.Load("filenumberone.env", "filenumbertwo.env")
Are all valid options
Contributing
Contributions are most welcome! The parser itself is pretty stupidly naive and I wouldn't be surprised if it breaks with edge cases.
code changes without tests will not be accepted
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Added some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request
Who?
The original library dotenv was written by Brandon Keepers, and this port was done by John Barton based off the tests/fixtures in the original library.