diff --git a/backend/remote-state/azure/arm_client.go b/backend/remote-state/azure/arm_client.go index e44861d69..210edaa12 100644 --- a/backend/remote-state/azure/arm_client.go +++ b/backend/remote-state/azure/arm_client.go @@ -63,6 +63,7 @@ func buildArmClient(config BackendConfig) (*ArmClient, error) { SubscriptionID: config.SubscriptionID, TenantID: config.TenantID, CustomResourceManagerEndpoint: config.CustomResourceManagerEndpoint, + MetadataURL: config.MetadataHost, Environment: config.Environment, MsiEndpoint: config.MsiEndpoint, diff --git a/backend/remote-state/azure/backend.go b/backend/remote-state/azure/backend.go index d340048bd..ad4b01912 100644 --- a/backend/remote-state/azure/backend.go +++ b/backend/remote-state/azure/backend.go @@ -30,6 +30,13 @@ func New() backend.Backend { Description: "The blob key.", }, + "metadata_host": { + Type: schema.TypeString, + Required: true, + DefaultFunc: schema.EnvDefaultFunc("ARM_METADATA_HOST", ""), + Description: "The Metadata URL which will be used to obtain the Cloud Environment.", + }, + "environment": { Type: schema.TypeString, Optional: true, @@ -169,6 +176,7 @@ type BackendConfig struct { ClientID string ClientSecret string CustomResourceManagerEndpoint string + MetadataHost string Environment string MsiEndpoint string ResourceGroupName string @@ -201,6 +209,7 @@ func (b *Backend) configure(ctx context.Context) error { ClientID: clientId, ClientSecret: clientSecret, CustomResourceManagerEndpoint: data.Get("endpoint").(string), + MetadataHost: data.Get("metadata_host").(string), Environment: data.Get("environment").(string), MsiEndpoint: data.Get("msi_endpoint").(string), ResourceGroupName: data.Get("resource_group_name").(string),