Skip to content

Commit 5a546e0

Browse files
use auth for acrs only
1 parent 49cc1bf commit 5a546e0

File tree

2 files changed

+30
-11
lines changed

2 files changed

+30
-11
lines changed

pkg/azure/credentialprovider/acr.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,11 @@ func (c CloudConfigCredentialProvider) GetAcrCredentials(image string) (k8sCrede
6969
Password: "",
7070
}
7171

72+
if !c.IsAcrRegistry(image) {
73+
klog.V(4).Info("image not from acr, returning empty credentials")
74+
return cred, nil
75+
}
76+
7277
if c.config.UseManagedIdentityExtension {
7378
klog.V(4).Info("using managed identity for acr credentials")
7479
loginServer := parseACRLoginServerFromImage(image, c.environment)

pkg/docker/registry/registry.go

Lines changed: 25 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -138,17 +138,31 @@ func getContainerRegistryRemoteOptions(ctx context.Context, client kubernetes.In
138138
return nil, fmt.Errorf("cannot fetch acr credentials: %w", err)
139139
}
140140

141-
sec := []corev1.Secret{ //{
142-
*dockerCfgSecretType.Create(container.Namespace, "secret", registry, authn.AuthConfig{
143-
Username: dockerConfigEntry.Username, Password: dockerConfigEntry.Password,
144-
}),
145-
}
146-
*authChain, err = k8schain.NewFromPullSecrets(
147-
ctx,
148-
sec,
149-
)
150-
if err != nil {
151-
return nil, err
141+
if dockerConfigEntry.Username != "" {
142+
143+
sec := []corev1.Secret{ //{
144+
*dockerCfgSecretType.Create(container.Namespace, "secret", registry, authn.AuthConfig{
145+
Username: dockerConfigEntry.Username, Password: dockerConfigEntry.Password,
146+
}),
147+
}
148+
*authChain, err = k8schain.NewFromPullSecrets(
149+
ctx,
150+
sec,
151+
)
152+
if err != nil {
153+
return nil, err
154+
}
155+
} else {
156+
*authChain, err = k8schain.New(
157+
ctx,
158+
client,
159+
k8schain.Options{
160+
Namespace: container.Namespace,
161+
ServiceAccountName: container.ServiceAccountName},
162+
)
163+
if err != nil {
164+
return nil, err
165+
}
152166
}
153167

154168
default:

0 commit comments

Comments
 (0)