kubernetes/kops · error

ConfigStore.Base is not set; cannot determine Azure storage

Error message

ConfigStore.Base is not set; cannot determine Azure storage account

What it means

Empty-input guard in azureStorageAccountFromConfigStore: the cluster's ConfigStore.Base (state location) is empty, so the Azure storage account for the state store cannot be derived. Fires when the cluster spec lacks a config base on Azure clusters.

Source

Thrown at upup/pkg/fi/cloudup/defaults.go:173

		if err != nil {
			return err
		}
		sa, err := cloud.(azure.AzureCloud).FindStorageAccountInfo(storageAccountName)
		if err != nil {
			return err
		}
		klog.Infof("Found storage account %q", *sa.ID)
		c.Spec.CloudProvider.Azure.StorageAccountID = *sa.ID
	}

	return ensureKubernetesVersion(vfsContext, c)
}

// azureStorageAccountFromConfigStore extracts the Azure storage account
// from an azureblob:// ConfigStore.Base.
func azureStorageAccountFromConfigStore(vfsContext *vfs.VFSContext, configBase string) (string, error) {
	if configBase == "" {
		return "", fmt.Errorf("ConfigStore.Base is not set; cannot determine Azure storage account")
	}
	p, err := vfsContext.BuildVfsPath(configBase)
	if err != nil {
		return "", fmt.Errorf("parsing ConfigStore.Base %q: %w", configBase, err)
	}
	azurePath, ok := p.(*vfs.AzureBlobPath)
	if !ok {
		return "", fmt.Errorf("expected azureblob:// ConfigStore.Base for Azure cluster, got %q", configBase)
	}
	return azurePath.Account(), nil
}

// ensureKubernetesVersion populates KubernetesVersion, if it is not already set
// It will be populated with the latest stable kubernetes version, or the version from the channel
func ensureKubernetesVersion(vfsContext *vfs.VFSContext, c *kops.Cluster) error {
	if c.Spec.KubernetesVersion == "" {
		if c.Spec.Channel != "" {
			channel, err := kops.LoadChannel(vfsContext, c.Spec.Channel)

View on GitHub (pinned to 4c8573c808)

Solutions

  1. Set --state / spec.configBase to an azureblob:// URL
  2. Re-run create cluster with a valid state store configured
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at upup/pkg/fi/cloudup/defaults.go:173 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/71f18a86daa1d19f. Report an issue: GitHub.