Skip to content

Commit f559714

Browse files
authored
fix: ECR Keyless access - deps bumped and changed to k8schain (#102)
Signed-off-by: Rashed Kamal <[email protected]> Tanzu Source Controller on EKS with ECR as a registry and auth against ECR via IAM role, the request fails. Upgraded to `github.com/google/go-containerregistry/pkg/authn/k8schain v0.0.0-20230517160804-b7ad3f13a62c`
1 parent e92458c commit f559714

File tree

4 files changed

+142
-113
lines changed

4 files changed

+142
-113
lines changed

controllers/imagerepository_controller.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ import (
3131
"strings"
3232

3333
"github.com/go-logr/logr"
34-
"github.com/google/go-containerregistry/pkg/authn/kubernetes"
34+
"github.com/google/go-containerregistry/pkg/authn/k8schain"
3535
"github.com/google/go-containerregistry/pkg/name"
3636
"github.com/google/go-containerregistry/pkg/v1/remote"
3737
"github.com/vmware-labs/reconciler-runtime/apis"
@@ -167,7 +167,7 @@ func ImageRepositoryImageDigestSyncReconciler() reconcilers.SubReconciler[*sourc
167167
if pullSecrets == nil {
168168
return nil
169169
}
170-
keychain, err := kubernetes.NewFromPullSecrets(ctx, pullSecrets)
170+
keychain, err := k8schain.NewFromPullSecrets(ctx, pullSecrets)
171171
if err != nil {
172172
return err
173173
}
@@ -240,7 +240,7 @@ func ImageRepositoryPullImageSyncReconciler(httpRootDir, httpHost string, now fu
240240
if pullSecrets == nil {
241241
return nil
242242
}
243-
keychain, err := kubernetes.NewFromPullSecrets(ctx, pullSecrets)
243+
keychain, err := k8schain.NewFromPullSecrets(ctx, pullSecrets)
244244
if err != nil {
245245
return err
246246
}

go.mod

Lines changed: 35 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ require (
77
github.com/go-logr/logr v1.2.4
88
github.com/google/go-cmp v0.5.9
99
github.com/google/go-containerregistry v0.15.2
10-
github.com/google/go-containerregistry/pkg/authn/kubernetes v0.0.0-20230316013512-53189d3374b8
10+
github.com/google/go-containerregistry/pkg/authn/k8schain v0.0.0-20230517160804-b7ad3f13a62c
1111
github.com/vmware-labs/reconciler-runtime v0.12.0
1212
github.com/vmware-tanzu/carvel-imgpkg v0.36.2
1313
go.uber.org/zap v1.24.0
@@ -19,57 +19,61 @@ require (
1919
)
2020

2121
require (
22-
cloud.google.com/go/compute v1.19.1 // indirect
22+
cloud.google.com/go/compute v1.19.3 // indirect
2323
cloud.google.com/go/compute/metadata v0.2.3 // indirect
24-
github.com/Azure/azure-sdk-for-go v55.0.0+incompatible // indirect
24+
github.com/Azure/azure-sdk-for-go v68.0.0+incompatible // indirect
2525
github.com/Azure/go-autorest v14.2.0+incompatible // indirect
26-
github.com/Azure/go-autorest/autorest v0.11.18 // indirect
27-
github.com/Azure/go-autorest/autorest/adal v0.9.13 // indirect
28-
github.com/Azure/go-autorest/autorest/azure/auth v0.5.2 // indirect
29-
github.com/Azure/go-autorest/autorest/azure/cli v0.4.1 // indirect
26+
github.com/Azure/go-autorest/autorest v0.11.29 // indirect
27+
github.com/Azure/go-autorest/autorest/adal v0.9.23 // indirect
28+
github.com/Azure/go-autorest/autorest/azure/auth v0.5.12 // indirect
29+
github.com/Azure/go-autorest/autorest/azure/cli v0.4.6 // indirect
3030
github.com/Azure/go-autorest/autorest/date v0.3.0 // indirect
3131
github.com/Azure/go-autorest/logger v0.2.1 // indirect
3232
github.com/Azure/go-autorest/tracing v0.6.0 // indirect
3333
github.com/VividCortex/ewma v1.1.1 // indirect
34-
github.com/aws/aws-sdk-go-v2 v1.7.1 // indirect
35-
github.com/aws/aws-sdk-go-v2/config v1.5.0 // indirect
36-
github.com/aws/aws-sdk-go-v2/credentials v1.3.1 // indirect
37-
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.3.0 // indirect
38-
github.com/aws/aws-sdk-go-v2/internal/ini v1.1.1 // indirect
39-
github.com/aws/aws-sdk-go-v2/service/ecr v1.4.1 // indirect
40-
github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.4.1 // indirect
41-
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.2.1 // indirect
42-
github.com/aws/aws-sdk-go-v2/service/sso v1.3.1 // indirect
43-
github.com/aws/aws-sdk-go-v2/service/sts v1.6.0 // indirect
44-
github.com/aws/smithy-go v1.6.0 // indirect
45-
github.com/awslabs/amazon-ecr-credential-helper/ecr-login v0.0.0-20220517224237-e6f29200ae04 // indirect
34+
github.com/aws/aws-sdk-go-v2 v1.18.0 // indirect
35+
github.com/aws/aws-sdk-go-v2/config v1.18.25 // indirect
36+
github.com/aws/aws-sdk-go-v2/credentials v1.13.24 // indirect
37+
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.13.3 // indirect
38+
github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.33 // indirect
39+
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.4.27 // indirect
40+
github.com/aws/aws-sdk-go-v2/internal/ini v1.3.34 // indirect
41+
github.com/aws/aws-sdk-go-v2/service/ecr v1.18.11 // indirect
42+
github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.16.2 // indirect
43+
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.9.27 // indirect
44+
github.com/aws/aws-sdk-go-v2/service/sso v1.12.10 // indirect
45+
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.14.10 // indirect
46+
github.com/aws/aws-sdk-go-v2/service/sts v1.19.0 // indirect
47+
github.com/aws/smithy-go v1.13.5 // indirect
48+
github.com/awslabs/amazon-ecr-credential-helper/ecr-login v0.0.0-20230510185313-f5e39e5f34c7 // indirect
4649
github.com/beorn7/perks v1.0.1 // indirect
4750
github.com/cespare/xxhash/v2 v2.2.0 // indirect
4851
github.com/cheggaaa/pb/v3 v3.1.0 // indirect
49-
github.com/chrismellard/docker-credential-acr-env v0.0.0-20220327082430-c57b701bfc08 // indirect
52+
github.com/chrismellard/docker-credential-acr-env v0.0.0-20230304212654-82a0ddb27589 // indirect
5053
github.com/containerd/stargz-snapshotter/estargz v0.14.3 // indirect
5154
github.com/cppforlife/color v1.9.1-0.20200716202919-6706ac40b835 // indirect
5255
github.com/cppforlife/go-cli-ui v0.0.0-20220425131040-94f26b16bc14 // indirect
5356
github.com/davecgh/go-spew v1.1.1 // indirect
54-
github.com/dimchansky/utfbom v1.1.0 // indirect
55-
github.com/docker/cli v23.0.5+incompatible // indirect
57+
github.com/dimchansky/utfbom v1.1.1 // indirect
58+
github.com/docker/cli v24.0.0+incompatible // indirect
5659
github.com/docker/distribution v2.8.2+incompatible // indirect
57-
github.com/docker/docker v23.0.5+incompatible // indirect
60+
github.com/docker/docker v24.0.0+incompatible // indirect
5861
github.com/docker/docker-credential-helpers v0.7.0 // indirect
5962
github.com/emicklei/go-restful/v3 v3.10.2 // indirect
6063
github.com/evanphx/json-patch v4.12.0+incompatible // indirect
6164
github.com/evanphx/json-patch/v5 v5.6.0 // indirect
6265
github.com/fatih/color v1.13.0 // indirect
63-
github.com/form3tech-oss/jwt-go v3.2.3+incompatible // indirect
6466
github.com/fsnotify/fsnotify v1.6.0 // indirect
6567
github.com/go-logr/zapr v1.2.4 // indirect
6668
github.com/go-openapi/jsonpointer v0.19.6 // indirect
6769
github.com/go-openapi/jsonreference v0.20.2 // indirect
6870
github.com/go-openapi/swag v0.22.3 // indirect
6971
github.com/gogo/protobuf v1.3.2 // indirect
72+
github.com/golang-jwt/jwt/v4 v4.5.0 // indirect
7073
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
7174
github.com/golang/protobuf v1.5.3 // indirect
7275
github.com/google/gnostic v0.6.9 // indirect
76+
github.com/google/go-containerregistry/pkg/authn/kubernetes v0.0.0-20230516205744-dbecb1de8cfa // indirect
7377
github.com/google/gofuzz v1.2.0 // indirect
7478
github.com/google/uuid v1.3.0 // indirect
7579
github.com/imdario/mergo v0.3.6 // indirect
@@ -94,16 +98,16 @@ require (
9498
github.com/prometheus/common v0.42.0 // indirect
9599
github.com/prometheus/procfs v0.9.0 // indirect
96100
github.com/rivo/uniseg v0.2.0 // indirect
97-
github.com/sirupsen/logrus v1.9.0 // indirect
101+
github.com/sirupsen/logrus v1.9.1 // indirect
98102
github.com/spf13/pflag v1.0.5 // indirect
99103
github.com/vbatts/tar-split v0.11.3 // indirect
100104
github.com/vito/go-interact v1.0.1 // indirect
101105
go.uber.org/atomic v1.7.0 // indirect
102106
go.uber.org/multierr v1.6.0 // indirect
103-
golang.org/x/crypto v0.1.0 // indirect
107+
golang.org/x/crypto v0.9.0 // indirect
104108
golang.org/x/net v0.10.0 // indirect
105-
golang.org/x/oauth2 v0.7.0 // indirect
106-
golang.org/x/sync v0.1.0 // indirect
109+
golang.org/x/oauth2 v0.8.0 // indirect
110+
golang.org/x/sync v0.2.0 // indirect
107111
golang.org/x/sys v0.8.0 // indirect
108112
golang.org/x/term v0.8.0 // indirect
109113
golang.org/x/text v0.9.0 // indirect
@@ -118,9 +122,9 @@ require (
118122
gopkg.in/yaml.v3 v3.0.1 // indirect
119123
k8s.io/apiextensions-apiserver v0.27.2 // indirect
120124
k8s.io/component-base v0.27.2 // indirect
121-
k8s.io/klog/v2 v2.90.1 // indirect
122-
k8s.io/kube-openapi v0.0.0-20230501164219-8b0f38b5fd1f // indirect
123-
k8s.io/utils v0.0.0-20230308161112-d77c459e9343 // indirect
125+
k8s.io/klog/v2 v2.100.1 // indirect
126+
k8s.io/kube-openapi v0.0.0-20230515203736-54b630e78af5 // indirect
127+
k8s.io/utils v0.0.0-20230505201702-9f6742963106 // indirect
124128
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect
125129
sigs.k8s.io/structured-merge-diff/v4 v4.2.3 // indirect
126130
)

0 commit comments

Comments
 (0)