Skip to content

Commit bc9c9ea

Browse files
committed
Populate AzureClients & Authorizer for Azure Stack
Uses ARMEndpoint from Cluster scope to configure Azure Stack settings for Azure Client and Authorizer, which will be used to configure ARM options for the V2 SDK.
1 parent 11f3e63 commit bc9c9ea

File tree

3 files changed

+8
-5
lines changed

3 files changed

+8
-5
lines changed

azure/scope/clients.go

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,12 +81,12 @@ func (c *AzureClients) HashKey() string {
8181
return base64.URLEncoding.EncodeToString(hasher.Sum(nil))
8282
}
8383

84-
func (c *AzureClients) setCredentialsWithProvider(ctx context.Context, subscriptionID, environmentName string, credentialsProvider CredentialsProvider) error {
84+
func (c *AzureClients) setCredentialsWithProvider(ctx context.Context, subscriptionID, environmentName, armEndpoint string, credentialsProvider CredentialsProvider) error {
8585
if credentialsProvider == nil {
8686
return fmt.Errorf("credentials provider cannot have an empty value")
8787
}
8888

89-
settings, err := c.getSettingsFromEnvironment(environmentName)
89+
settings, err := c.getSettingsFromEnvironment(environmentName, armEndpoint)
9090
if err != nil {
9191
return err
9292
}
@@ -121,7 +121,7 @@ func (c *AzureClients) setCredentialsWithProvider(ctx context.Context, subscript
121121
return err
122122
}
123123

124-
func (c *AzureClients) getSettingsFromEnvironment(environmentName string) (s auth.EnvironmentSettings, err error) {
124+
func (c *AzureClients) getSettingsFromEnvironment(environmentName, armEndpoint string) (s auth.EnvironmentSettings, err error) {
125125
s = auth.EnvironmentSettings{
126126
Values: map[string]string{},
127127
}
@@ -138,6 +138,8 @@ func (c *AzureClients) getSettingsFromEnvironment(environmentName string) (s aut
138138
setValue(s, "AZURE_AD_RESOURCE")
139139
if v := s.Values["AZURE_ENVIRONMENT"]; v == "" {
140140
s.Environment = azureautorest.PublicCloud
141+
} else if len(armEndpoint) > 0 {
142+
s.Environment, err = azureautorest.EnvironmentFromURL(armEndpoint)
141143
} else {
142144
s.Environment, err = azureautorest.EnvironmentFromName(v)
143145
}

azure/scope/cluster.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,8 @@ func NewClusterScope(ctx context.Context, params ClusterScopeParams) (*ClusterSc
8484
if err != nil {
8585
return nil, errors.Wrap(err, "failed to init credentials provider")
8686
}
87-
err = params.AzureClients.setCredentialsWithProvider(ctx, params.AzureCluster.Spec.SubscriptionID, params.AzureCluster.Spec.AzureEnvironment, credentialsProvider)
87+
spec := params.AzureCluster.Spec
88+
err = params.AzureClients.setCredentialsWithProvider(ctx, spec.SubscriptionID, spec.AzureEnvironment, spec.ARMEndpoint, credentialsProvider)
8889
if err != nil {
8990
return nil, errors.Wrap(err, "failed to configure azure settings and credentials for Identity")
9091
}

azure/scope/managedcontrolplane.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ func NewManagedControlPlaneScope(ctx context.Context, params ManagedControlPlane
9797
return nil, errors.Wrap(err, "failed to init credentials provider")
9898
}
9999

100-
if err := params.AzureClients.setCredentialsWithProvider(ctx, params.ControlPlane.Spec.SubscriptionID, params.ControlPlane.Spec.AzureEnvironment, credentialsProvider); err != nil {
100+
if err := params.AzureClients.setCredentialsWithProvider(ctx, params.ControlPlane.Spec.SubscriptionID, params.ControlPlane.Spec.AzureEnvironment, "", credentialsProvider); err != nil {
101101
return nil, errors.Wrap(err, "failed to configure azure settings and credentials for Identity")
102102
}
103103

0 commit comments

Comments
 (0)