kubernetes/kops · error

Azure subscription ID is empty

Error message

Azure subscription ID is empty

What it means

Empty-value guard in azureSubscriptionID: the cloud does expose a SubscriptionID() method but it returns an empty string, so a valid Azure subnet ID cannot be constructed for Terraform output. Indicates the Azure cloud was initialized without a subscription ID (misconfigured credentials/env).

Source

Thrown at upup/pkg/fi/cloudup/azuretasks/subnet_terraform.go:141

		return nil, err
	}
	subnetID := azure.SubnetID{
		SubscriptionID:     subscriptionID,
		ResourceGroupName:  fi.ValueOf(s.ResourceGroup.Name),
		VirtualNetworkName: fi.ValueOf(s.VirtualNetwork.Name),
		SubnetName:         fi.ValueOf(s.Name),
	}
	return terraformWriter.LiteralFromStringValue(subnetID.String()), nil
}

func azureSubscriptionID(t *terraform.TerraformTarget) (string, error) {
	cloud, ok := t.Cloud.(subscriptionIDProvider)
	if !ok {
		return "", fmt.Errorf("cloud %T does not expose Azure subscription ID", t.Cloud)
	}
	subscriptionID := cloud.SubscriptionID()
	if subscriptionID == "" {
		return "", fmt.Errorf("Azure subscription ID is empty")
	}
	return subscriptionID, nil
}

View on GitHub (pinned to 4c8573c808)

Solutions

  1. Set AZURE_SUBSCRIPTION_ID (or the equivalent configuration) before running
  2. Verify the Azure credential chain resolved a subscription
  3. Re-run the Terraform generation
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at upup/pkg/fi/cloudup/azuretasks/subnet_terraform.go:141 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of kubernetes/kops@4c8573c808 (2026-09-05). Data as JSON: /api/errors/58ebfc0defe2da58. Report an issue: GitHub.