diff --git a/cmd/kops/create_cluster.go b/cmd/kops/create_cluster.go index 753bda6e07..22ead7143a 100644 --- a/cmd/kops/create_cluster.go +++ b/cmd/kops/create_cluster.go @@ -537,12 +537,8 @@ func RunCreateCluster(ctx context.Context, f *util.Factory, out io.Writer, c *Cr } if featureflag.Azure.Enabled() { - if c.AzureSubscriptionID == "" { - if id, ok := os.LookupEnv("AZURE_SUBSCRIPTION_ID"); ok { - c.AzureSubscriptionID = id - } else { - return fmt.Errorf("--azure-subscription-id is required") - } + if c.CloudProvider == "azure" && c.AzureSubscriptionID == "" { + return fmt.Errorf("--azure-subscription-id is required") } } diff --git a/tests/e2e/kubetest2-kops/deployer/common.go b/tests/e2e/kubetest2-kops/deployer/common.go index 7ae627bd16..3e79f85e4c 100644 --- a/tests/e2e/kubetest2-kops/deployer/common.go +++ b/tests/e2e/kubetest2-kops/deployer/common.go @@ -319,6 +319,9 @@ func defaultClusterName(cloudProvider string) (string, error) { switch cloudProvider { case "aws": suffix = dnsDomain + case "azure": + // Azure uses --dns=none and the domain is not needed + suffix = "" default: suffix = "k8s.local" } @@ -337,7 +340,12 @@ func defaultClusterName(cloudProvider string) (string, error) { if len(jobName) > gcpLimit && cloudProvider == "gce" { jobName = jobName[:gcpLimit] } - return fmt.Sprintf("%v.%v", jobName, suffix), nil + + if suffix != "" { + jobName = jobType + "." + suffix + } + + return jobName, nil } // stateStore returns the kops state store to use diff --git a/upup/pkg/fi/cloudup/azure/verifier.go b/upup/pkg/fi/cloudup/azure/verifier.go index fad0bbd36c..7fa5c30e04 100644 --- a/upup/pkg/fi/cloudup/azure/verifier.go +++ b/upup/pkg/fi/cloudup/azure/verifier.go @@ -91,7 +91,7 @@ func (a azureVerifier) VerifyToken(ctx context.Context, rawRequest *http.Request } nodeName := strings.ToLower(*vm.Properties.OSProfile.ComputerName) - ni, err := a.client.nisClient.GetVirtualMachineScaleSetNetworkInterface(ctx, a.client.resourceGroup, vmssName, vmssIndex, vmssName+"-netconfig", nil) + ni, err := a.client.nisClient.GetVirtualMachineScaleSetNetworkInterface(ctx, a.client.resourceGroup, vmssName, vmssIndex, vmssName, nil) if err != nil { return nil, fmt.Errorf("getting info for VMSS network interface %q #%s: %w", vmssName, vmssIndex, err) } diff --git a/upup/pkg/fi/cloudup/azuretasks/vmscaleset.go b/upup/pkg/fi/cloudup/azuretasks/vmscaleset.go index 6b9e66e09a..0f5b2779a1 100644 --- a/upup/pkg/fi/cloudup/azuretasks/vmscaleset.go +++ b/upup/pkg/fi/cloudup/azuretasks/vmscaleset.go @@ -308,7 +308,7 @@ func (s *VMScaleSet) RenderAzure(t *azure.AzureAPITarget, a, e, changes *VMScale } if *e.RequirePublicIP { ipConfigProperties.PublicIPAddressConfiguration = &compute.VirtualMachineScaleSetPublicIPAddressConfiguration{ - Name: to.Ptr(name + "-publicipconfig"), + Name: to.Ptr(name), Properties: &compute.VirtualMachineScaleSetPublicIPAddressConfigurationProperties{ PublicIPAddressVersion: to.Ptr(compute.IPVersionIPv4), }, @@ -328,13 +328,13 @@ func (s *VMScaleSet) RenderAzure(t *azure.AzureAPITarget, a, e, changes *VMScale } networkConfig := &compute.VirtualMachineScaleSetNetworkConfiguration{ - Name: to.Ptr(name + "-netconfig"), + Name: to.Ptr(name), Properties: &compute.VirtualMachineScaleSetNetworkConfigurationProperties{ Primary: to.Ptr(true), EnableIPForwarding: to.Ptr(true), IPConfigurations: []*compute.VirtualMachineScaleSetIPConfiguration{ { - Name: to.Ptr(name + "-ipconfig"), + Name: to.Ptr(name), Properties: ipConfigProperties, }, }, diff --git a/upup/pkg/fi/cloudup/azuretasks/vmscaleset_test.go b/upup/pkg/fi/cloudup/azuretasks/vmscaleset_test.go index 49bdf48884..71ff198a7a 100644 --- a/upup/pkg/fi/cloudup/azuretasks/vmscaleset_test.go +++ b/upup/pkg/fi/cloudup/azuretasks/vmscaleset_test.go @@ -212,7 +212,7 @@ func TestVMScaleSetFind(t *testing.T) { PrivateIPAddressVersion: to.Ptr(compute.IPVersionIPv4), } ipConfigProperties.PublicIPAddressConfiguration = &compute.VirtualMachineScaleSetPublicIPAddressConfiguration{ - Name: to.Ptr("vmss-publicipconfig"), + Name: to.Ptr("vmss"), Properties: &compute.VirtualMachineScaleSetPublicIPAddressConfigurationProperties{ PublicIPAddressVersion: to.Ptr(compute.IPVersionIPv4), }, @@ -223,13 +223,13 @@ func TestVMScaleSetFind(t *testing.T) { }, } networkConfig := &compute.VirtualMachineScaleSetNetworkConfiguration{ - Name: to.Ptr("vmss-netconfig"), + Name: to.Ptr("vmss"), Properties: &compute.VirtualMachineScaleSetNetworkConfigurationProperties{ Primary: to.Ptr(true), EnableIPForwarding: to.Ptr(true), IPConfigurations: []*compute.VirtualMachineScaleSetIPConfiguration{ { - Name: to.Ptr("vmss-ipconfig"), + Name: to.Ptr("vmss"), Properties: ipConfigProperties, }, }, diff --git a/upup/pkg/fi/cloudup/new_cluster.go b/upup/pkg/fi/cloudup/new_cluster.go index 5222178ce5..133e612db9 100644 --- a/upup/pkg/fi/cloudup/new_cluster.go +++ b/upup/pkg/fi/cloudup/new_cluster.go @@ -19,6 +19,7 @@ package cloudup import ( "context" "fmt" + "os" "strconv" "strings" @@ -179,6 +180,7 @@ func (o *NewClusterOptions) InitDefaults() { // Azure-specific o.AzureAdminUser = "kops" + o.AzureSubscriptionID = os.Getenv("AZURE_SUBSCRIPTION_ID") } type NewClusterResult struct {