in internal/meta/base_meta.go [644:673]
func (meta *baseMeta) init_notf(ctx context.Context) error {
schResp, diags := meta.tfclient.GetProviderSchema()
if diags.HasErrors() {
return fmt.Errorf("getting provider schema: %v", diags)
}
providerCfg := "{}"
if !meta.useAzAPI() {
// Ensure "features" is always defined in the azurerm provider initConfig
providerCfg = `{"features": []}`
}
initConfig, err := ctyjson.Unmarshal([]byte(providerCfg), configschema.SchemaBlockImpliedType(schResp.Provider.Block))
if err != nil {
return fmt.Errorf("ctyjson unmarshal initial provider config: %v", err)
}
providerConfig := initConfig.AsValueMap()
for k, v := range meta.providerConfig {
providerConfig[k] = v
}
if _, diags = meta.tfclient.ConfigureProvider(ctx, typ.ConfigureProviderRequest{
Config: cty.ObjectVal(providerConfig),
}); diags.HasErrors() {
return fmt.Errorf("configure provider: %v", diags)
}
return nil
}