in internal/terraform/json.go [138:161]
func ReadProviderConfigValues(data []byte, kind, name string) (map[string]interface{}, error) {
p := new(plan)
if err := json.Unmarshal(data, p); err != nil {
return nil, err
}
result := make(map[string]interface{})
// Resolve expressions in the provider config.
config, ok := resourceProviderConfig(kind, name, p)
if !ok {
return result, nil
}
for k, v := range config.Expressions {
// Within a provider config, we expect expressions to be maps, but that's not guaranteed, so don't type assert.
switch mv := v.(type) {
case map[string]interface{}:
result[k] = resolveExpression(mv, p)
}
}
return result, nil
}