Skip to content

Commit bb56007

Browse files
committed
fix e2e-vmss
1 parent 4cef630 commit bb56007

File tree

10 files changed

+1729
-3
lines changed

10 files changed

+1729
-3
lines changed

test/e2e/testsuites/pre_provisioned_keyvault_tester.go

Lines changed: 57 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ import (
2828
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/keyvault/armkeyvault"
2929
"github.com/Azure/azure-sdk-for-go/sdk/storage/azblob"
3030
"github.com/Azure/azure-sdk-for-go/services/graphrbac/1.6/graphrbac"
31+
"github.com/Azure/azure-sdk-for-go/services/msi/mgmt/2018-11-30/msi"
3132
"github.com/Azure/go-autorest/autorest"
3233
"github.com/Azure/go-autorest/autorest/adal"
3334
"github.com/Azure/go-autorest/autorest/azure"
@@ -152,11 +153,17 @@ func generateSASToken(accountName, accountKey string) string {
152153
}
153154

154155
func createVault(ctx context.Context, cred azcore.TokenCredential) (*armkeyvault.Vault, error) {
155-
objectID, err := getServicePrincipalObjectID(ctx, clientID)
156+
clientObjectID, err := getServicePrincipalObjectID(ctx, clientID)
156157
if err != nil {
157158
return nil, err
158159
}
159-
ginkgo.By("object ID: " + objectID)
160+
ginkgo.By("client object ID: " + clientObjectID)
161+
162+
msiObjectID, err := getMSIObjectID(ctx, "blobfuse-csi-driver-e2e-test-id")
163+
if err != nil {
164+
return nil, err
165+
}
166+
ginkgo.By("MSI object ID: " + msiObjectID)
160167

161168
vaultsClient, err := armkeyvault.NewVaultsClient(subscriptionID, cred, nil)
162169
if err != nil {
@@ -176,9 +183,20 @@ func createVault(ctx context.Context, cred azcore.TokenCredential) (*armkeyvault
176183
},
177184
TenantID: to.Ptr(TenantID),
178185
AccessPolicies: []*armkeyvault.AccessPolicyEntry{
186+
// permission for upstream e2e test
187+
{
188+
TenantID: to.Ptr(TenantID),
189+
ObjectID: to.Ptr(clientObjectID),
190+
Permissions: &armkeyvault.Permissions{
191+
Secrets: []*armkeyvault.SecretPermissions{
192+
to.Ptr(armkeyvault.SecretPermissionsGet),
193+
},
194+
},
195+
},
196+
// permission for upstream e2e-vmss test
179197
{
180198
TenantID: to.Ptr(TenantID),
181-
ObjectID: to.Ptr(objectID),
199+
ObjectID: to.Ptr(msiObjectID),
182200
Permissions: &armkeyvault.Permissions{
183201
Secrets: []*armkeyvault.SecretPermissions{
184202
to.Ptr(armkeyvault.SecretPermissionsGet),
@@ -310,3 +328,39 @@ func getServicePrincipalsClient() (*graphrbac.ServicePrincipalsClient, error) {
310328

311329
return &spClient, nil
312330
}
331+
332+
func getMSIUserAssignedIDClient() (*msi.UserAssignedIdentitiesClient, error) {
333+
msiClient := msi.NewUserAssignedIdentitiesClient(subscriptionID)
334+
335+
env, err := azure.EnvironmentFromName(cloud)
336+
if err != nil {
337+
return nil, err
338+
}
339+
340+
oauthConfig, err := adal.NewOAuthConfig(env.ActiveDirectoryEndpoint, TenantID)
341+
if err != nil {
342+
return nil, err
343+
}
344+
345+
token, err := adal.NewServicePrincipalToken(*oauthConfig, clientID, clientSecret, env.ResourceManagerEndpoint)
346+
if err != nil {
347+
return nil, err
348+
}
349+
350+
authorizer := autorest.NewBearerAuthorizer(token)
351+
352+
msiClient.Authorizer = authorizer
353+
354+
return &msiClient, nil
355+
}
356+
357+
func getMSIObjectID(ctx context.Context, identityName string) (string, error) {
358+
msiClient, err := getMSIUserAssignedIDClient()
359+
if err != nil {
360+
return "", err
361+
}
362+
363+
id, err := msiClient.Get(ctx, resourceGroupName, identityName)
364+
365+
return id.UserAssignedIdentityProperties.PrincipalID.String(), err
366+
}

vendor/github.com/Azure/azure-sdk-for-go/services/msi/mgmt/2018-11-30/msi/CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

vendor/github.com/Azure/azure-sdk-for-go/services/msi/mgmt/2018-11-30/msi/_meta.json

Lines changed: 11 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

vendor/github.com/Azure/azure-sdk-for-go/services/msi/mgmt/2018-11-30/msi/client.go

Lines changed: 41 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)