in pkg/rbeconfigsgen/rbeconfigsgen.go [405:429]
func appendCppEnv(env []string, o *Options) ([]string, error) {
for k, v := range o.CppGenEnv {
env = append(env, fmt.Sprintf("%s=%s", k, v))
}
if len(o.CppGenEnvJSON) == 0 {
return env, nil
}
blob, err := ioutil.ReadFile(o.CppGenEnvJSON)
if err != nil {
return nil, fmt.Errorf("unable to read JSON file %q to read C++ config generation environment variables from: %w", o.CppGenEnvJSON, err)
}
e := map[string]string{}
if err := json.Unmarshal(blob, &e); err != nil {
return nil, fmt.Errorf("unable to parse file %q as a JSON string -> string dictionary: %w", o.CppGenEnvJSON, err)
}
for k, v := range e {
env = append(env, fmt.Sprintf("%s=%s", k, v))
}
return env, nil
}