in internal/loader/configuration_setting_loader.go [764:789]
func createSecretClients(
ctx context.Context,
acp acpv1.AzureAppConfigurationProvider) (*syncmap.Map, error) {
secretClients := &syncmap.Map{}
if acp.Spec.Secret == nil || acp.Spec.Secret.Auth == nil {
return secretClients, nil
}
for _, keyVault := range acp.Spec.Secret.Auth.KeyVaults {
url, _ := url.Parse(keyVault.Uri)
tokenCredential, err := CreateTokenCredential(ctx, keyVault.AzureAppConfigurationProviderAuth, acp.Namespace)
if err != nil {
klog.ErrorS(err, fmt.Sprintf("Fail to create token credential for %q", keyVault.Uri))
return nil, err
}
hostName := strings.ToLower(url.Host)
newSecretClient, err := azsecrets.NewClient("https://"+hostName, tokenCredential, nil)
if err != nil {
klog.ErrorS(err, fmt.Sprintf("Fail to create key vault secret client for %q", keyVault.Uri))
return nil, err
}
secretClients.Store(hostName, newSecretClient)
}
return secretClients, nil
}