INNER CODE UNIT · Go

envVars

umputun/spot · cmd/spot/main.go:554

func envVars(vars map[string]string, envFile string) (map[string]string, error) {
	res := make(map[string]string)

	expandEnv := func(value string) string {
		// expand environment variables denoted by $var or ${var}
		return os.Expand(value, os.Getenv)
	}

	// load env file vars
	envFileData := struct {
		Vars map[string]string `yaml:"vars"`
	}{}
	fh, err := os.Open(envFile) //nolint:gosec // file inclusion from cli is intentional
	if err == nil {
		defer fh.Close()
		if err := yaml.NewDecoder(fh).Decode(&envFileData); err != nil {
			log.Printf("[WARN] can't parse env file %q: %v", envFile, err)
		}

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…