Skip to content

Commit

Permalink
Merge pull request gardener#157 from AndreasBurger/az-clouds-pt2
Browse files Browse the repository at this point in the history
Always use passed ConnectConfig when creating clients
  • Loading branch information
AndreasBurger authored and Rishabh Patel committed Jul 18, 2024
1 parent d5da1c8 commit ab70c68
Showing 1 changed file with 9 additions and 17 deletions.
26 changes: 9 additions & 17 deletions pkg/azure/access/factory.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,21 +21,13 @@ type TokenCredentialProvider func(connectConfig ConnectConfig) (azcore.TokenCred

// defaultFactory implements Factory interface.
type defaultFactory struct {
clientOptions *arm.ClientOptions
tokenCredentialProvider TokenCredentialProvider
}

// NewDefaultAccessFactory creates a new instance of Factory.
func NewDefaultAccessFactory() Factory {
return NewAccessFactoryWithOptions(nil, GetDefaultTokenCredentials)
}

// NewAccessFactoryWithOptions creates an instance of Factory which uses a fixed tokenCredential
// passed as an argument and also takes custom arm.ClientOptions.
func NewAccessFactoryWithOptions(clientOptions *arm.ClientOptions, tokenCredentialProvider TokenCredentialProvider) Factory {
return defaultFactory{
clientOptions: clientOptions,
tokenCredentialProvider: tokenCredentialProvider,
tokenCredentialProvider: GetDefaultTokenCredentials,
}
}

Expand All @@ -54,61 +46,61 @@ func (f defaultFactory) GetResourceGroupsAccess(connectConfig ConnectConfig) (*a
if err != nil {
return nil, err
}
return armresources.NewResourceGroupsClient(connectConfig.SubscriptionID, tokenCredential, f.clientOptions)
return armresources.NewResourceGroupsClient(connectConfig.SubscriptionID, tokenCredential, &arm.ClientOptions{ClientOptions: connectConfig.ClientOptions})
}

func (f defaultFactory) GetVirtualMachinesAccess(connectConfig ConnectConfig) (*armcompute.VirtualMachinesClient, error) {
tokenCredential, err := f.tokenCredentialProvider(connectConfig)
if err != nil {
return nil, err
}
return armcompute.NewVirtualMachinesClient(connectConfig.SubscriptionID, tokenCredential, f.clientOptions)
return armcompute.NewVirtualMachinesClient(connectConfig.SubscriptionID, tokenCredential, &arm.ClientOptions{ClientOptions: connectConfig.ClientOptions})
}

func (f defaultFactory) GetNetworkInterfacesAccess(connectConfig ConnectConfig) (*armnetwork.InterfacesClient, error) {
tokenCredential, err := f.tokenCredentialProvider(connectConfig)
if err != nil {
return nil, err
}
return armnetwork.NewInterfacesClient(connectConfig.SubscriptionID, tokenCredential, f.clientOptions)
return armnetwork.NewInterfacesClient(connectConfig.SubscriptionID, tokenCredential, &arm.ClientOptions{ClientOptions: connectConfig.ClientOptions})
}

func (f defaultFactory) GetSubnetAccess(connectConfig ConnectConfig) (*armnetwork.SubnetsClient, error) {
tokenCredential, err := f.tokenCredentialProvider(connectConfig)
if err != nil {
return nil, err
}
return armnetwork.NewSubnetsClient(connectConfig.SubscriptionID, tokenCredential, f.clientOptions)
return armnetwork.NewSubnetsClient(connectConfig.SubscriptionID, tokenCredential, &arm.ClientOptions{ClientOptions: connectConfig.ClientOptions})
}

func (f defaultFactory) GetDisksAccess(connectConfig ConnectConfig) (*armcompute.DisksClient, error) {
tokenCredential, err := f.tokenCredentialProvider(connectConfig)
if err != nil {
return nil, err
}
return armcompute.NewDisksClient(connectConfig.SubscriptionID, tokenCredential, f.clientOptions)
return armcompute.NewDisksClient(connectConfig.SubscriptionID, tokenCredential, &arm.ClientOptions{ClientOptions: connectConfig.ClientOptions})
}

func (f defaultFactory) GetResourceGraphAccess(connectConfig ConnectConfig) (*armresourcegraph.Client, error) {
tokenCredential, err := f.tokenCredentialProvider(connectConfig)
if err != nil {
return nil, err
}
return armresourcegraph.NewClient(tokenCredential, f.clientOptions)
return armresourcegraph.NewClient(tokenCredential, &arm.ClientOptions{ClientOptions: connectConfig.ClientOptions})
}

func (f defaultFactory) GetVirtualMachineImagesAccess(connectConfig ConnectConfig) (*armcompute.VirtualMachineImagesClient, error) {
tokenCredential, err := f.tokenCredentialProvider(connectConfig)
if err != nil {
return nil, err
}
return armcompute.NewVirtualMachineImagesClient(connectConfig.SubscriptionID, tokenCredential, f.clientOptions)
return armcompute.NewVirtualMachineImagesClient(connectConfig.SubscriptionID, tokenCredential, &arm.ClientOptions{ClientOptions: connectConfig.ClientOptions})
}

func (f defaultFactory) GetMarketPlaceAgreementsAccess(connectConfig ConnectConfig) (*armmarketplaceordering.MarketplaceAgreementsClient, error) {
tokenCredential, err := f.tokenCredentialProvider(connectConfig)
if err != nil {
return nil, err
}
return armmarketplaceordering.NewMarketplaceAgreementsClient(connectConfig.SubscriptionID, tokenCredential, f.clientOptions)
return armmarketplaceordering.NewMarketplaceAgreementsClient(connectConfig.SubscriptionID, tokenCredential, &arm.ClientOptions{ClientOptions: connectConfig.ClientOptions})
}

0 comments on commit ab70c68

Please sign in to comment.