sentinel/env/env.go
2021-03-07 23:54:50 -05:00

27 lines
667 B
Go

package env
import (
"github.com/lbryio/lbry.go/v2/extras/errors"
e "github.com/caarlos0/env"
)
// Config holds the environment configuration used by lighthouse.
type Config struct {
CoinMineAPIKey string `env:"COINMINE_API_KEY"`
MiningDutchAPIKey string `env:"MININGDUTCH_API_KEY"`
LbrycrdURL string `env:"LBRYCRD_CONNECT" envDefault:""`
SlackHookURL string `env:"SLACKHOOKURL"`
SlackChannel string `env:"SLACKCHANNEL"`
}
// NewWithEnvVars creates an Config from environment variables
func NewWithEnvVars() (*Config, error) {
cfg := &Config{}
err := e.Parse(cfg)
if err != nil {
return nil, errors.Err(err)
}
return cfg, nil
}