func (ctx *Context) load_env_from_cfg(cfg *gocfg.Config) error { if !cfg.HasSection("hwaf-env") { return nil } section := "hwaf-env" options, err := cfg.Options(section) if err != nil { return err } for _, k := range options { v, err := cfg.String(section, k) if err != nil { continue } v = os.ExpandEnv(v) vv := os.Getenv(k) if vv != "" && vv != v { // we don't override parent environment! // would be too confusing ctx.Warn( "configuration tries to override env.var [%s] with [%s] (current=%s)\n", k, v, vv, ) } err = os.Setenv(k, v) if err != nil { ctx.Warn("problem setting env. var [%s]: %v\n", k, err) } } return nil }