Skip to content

Commit 8e28bbf

Browse files
authored
Merge master into release-1.16 for upcoming v1.16.3 release; remove #2785 (#2788)
1 parent 0a8e5be commit 8e28bbf

31 files changed

+480
-320
lines changed

.github/workflows/deps.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -26,14 +26,14 @@ jobs:
2626
- id: govulncheck
2727
uses: ./.github/actions/govulncheck
2828
with:
29-
go-version-input: 1.21.5
29+
go-version-input: 1.21.6
3030
go-version-file: go.mod
3131
cache: false
3232
repo-checkout: false
3333
- id: govulncheck-tests-agent
3434
uses: ./.github/actions/govulncheck
3535
with:
36-
go-version-input: 1.21.5
36+
go-version-input: 1.21.6
3737
go-version-file: test/agent/go.mod
3838
cache: false
3939
repo-checkout: false

.github/workflows/issue-closed-message.yaml

+2-4
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,5 @@ jobs:
1515
# These inputs are both required
1616
repo-token: "${{ secrets.GITHUB_TOKEN }}"
1717
message: |
18-
### ⚠️COMMENT VISIBILITY WARNING⚠️
19-
Comments on closed issues are hard for our team to see.
20-
If you need more assistance, please open a new issue that references this one.
21-
If you wish to keep having a conversation with other community members under this issue feel free to do so.
18+
This issue is now closed. Comments on closed issues are hard for our team to see.
19+
If you need more assistance, please either tag a team member or open a new issue that references this one.

Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
# VERSION is the source revision that executables and images are built from.
2323
VERSION ?= $(shell git describe --tags --always --dirty || echo "unknown")
2424
# GOLANG_IMAGE is the building golang container image used.
25-
GOLANG_IMAGE ?= public.ecr.aws/eks-distro-build-tooling/golang:1.21.5-6-gcc-al2
25+
GOLANG_IMAGE ?= public.ecr.aws/eks-distro-build-tooling/golang:1.21.6-7-gcc-al2
2626
# BASE_IMAGE_CNI is the base layer image for the primary AWS VPC CNI plugin container
2727
BASE_IMAGE_CNI ?= public.ecr.aws/eks-distro-build-tooling/eks-distro-minimal-base-iptables:latest.2
2828
# BASE_IMAGE_CNI_INIT is the base layer image for the AWS VPC CNI init container

README.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -38,9 +38,9 @@ See [here](./docs/iam-policy.md) for required IAM policies.
3838

3939
* `make` defaults to `make build-linux` that builds the Linux binaries.
4040
* `unit-test`, `format`,`lint` and `vet` provide ways to run the respective tests/tools and should be run before submitting a PR.
41-
* `make docker` will create a docker container using the docker-build with the finished binaries, with a tag of `amazon/amazon-k8s-cni:latest`
42-
* `make docker-build` uses a docker container (golang:1.16) to build the binaries.
43-
* `make docker-unit-tests` uses a docker container (golang:1.16) to run all unit tests.
41+
* `make docker` will create a docker container using `docker buildx` that contains the finished binaries, with a tag of `amazon/amazon-k8s-cni:latest`
42+
* `make docker-unit-tests` uses a docker container to run all unit tests.
43+
* builds for all build and test actions run in docker containers based on `golang:1.21.5-6-gcc-al2` unless a different `GOLANG_IMAGE` tag is passed in.
4444

4545
## Components
4646

charts/aws-vpc-cni/README.md

+5
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,11 @@ for kind in daemonSet clusterRole clusterRoleBinding serviceAccount; do
122122
kubectl -n kube-system annotate --overwrite $kind aws-node meta.helm.sh/release-namespace=kube-system
123123
kubectl -n kube-system label --overwrite $kind aws-node app.kubernetes.io/managed-by=Helm
124124
done
125+
126+
kubectl -n kube-system annotate --overwrite configmap amazon-vpc-cni meta.helm.sh/release-name=YOUR_HELM_RELEASE_NAME_HERE
127+
kubectl -n kube-system annotate --overwrite configmap amazon-vpc-cni meta.helm.sh/release-namespace=kube-system
128+
kubectl -n kube-system label --overwrite configmap amazon-vpc-cni app.kubernetes.io/managed-by=Helm
129+
125130
```
126131

127132
## Migrate from Helm v2 to Helm v3

charts/cni-metrics-helper/README.md

+1
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ The following table lists the configurable parameters for this chart and their d
5959
| serviceAccount.name | The name of the ServiceAccount to use | nil |
6060
| serviceAccount.create | Specifies whether a ServiceAccount should be created | true |
6161
| serviceAccount.annotations | Specifies the annotations for ServiceAccount | {} |
62+
| podAnnotations | Specifies the annotations for pods | {} |
6263
| revisionHistoryLimit | The number of revisions to keep | 10 |
6364
| podSecurityContext | SecurityContext to set on the pod | {} |
6465
| containerSecurityContext | SecurityContext to set on the container | {} |

charts/cni-metrics-helper/templates/deployment.yaml

+6
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,12 @@ spec:
1212
k8s-app: cni-metrics-helper
1313
template:
1414
metadata:
15+
{{- if .Values.podAnnotations }}
16+
annotations:
17+
{{- range $key, $value := .Values.podAnnotations }}
18+
{{ $key }}: {{ $value | quote }}
19+
{{- end }}
20+
{{- end }}
1521
labels:
1622
k8s-app: cni-metrics-helper
1723
spec:

charts/cni-metrics-helper/values.yaml

+2
Original file line numberDiff line numberDiff line change
@@ -34,3 +34,5 @@ revisionHistoryLimit: 10
3434
podSecurityContext: {}
3535

3636
containerSecurityContext: {}
37+
38+
podAnnotations: {}

cmd/aws-vpc-cni/main.go

+4-2
Original file line numberDiff line numberDiff line change
@@ -270,8 +270,10 @@ func generateJSON(jsonFile string, outFile string, getPrimaryIP func(ipv4 bool)
270270
if egressEnabled {
271271
nodeIP, err = getPrimaryIP(false)
272272
if err != nil {
273-
log.Errorf("To support IPv6 egress, node primary ENI must have a global IPv6 address, error: %v", err)
274-
return err
273+
// When ENABLE_V6_EGRESS is set, but the node is lacking an IPv6 address, log a warning and disable the egress-v6-cni plugin.
274+
// This allows IPv4-only nodes to function while still alerting the customer to the possibility of a misconfiguration.
275+
log.Warnf("To support IPv6 egress, node primary ENI must have a global IPv6 address, error: %v", err)
276+
egressEnabled = false
275277
}
276278
}
277279
}

go.mod

+27-27
Original file line numberDiff line numberDiff line change
@@ -14,30 +14,29 @@ require (
1414
github.com/golang/mock v1.6.0
1515
github.com/golang/protobuf v1.5.3
1616
github.com/google/go-cmp v0.6.0
17-
github.com/onsi/ginkgo/v2 v2.13.2
17+
github.com/onsi/ginkgo/v2 v2.14.0
1818
github.com/onsi/gomega v1.30.0
1919
github.com/pkg/errors v0.9.1
20-
github.com/prometheus/client_golang v1.17.0
20+
github.com/prometheus/client_golang v1.18.0
2121
github.com/prometheus/client_model v0.5.0
22-
github.com/prometheus/common v0.44.0
23-
github.com/samber/lo v1.38.1
22+
github.com/prometheus/common v0.45.0
23+
github.com/samber/lo v1.39.0
2424
github.com/sirupsen/logrus v1.9.3
2525
github.com/spf13/pflag v1.0.5
2626
github.com/stretchr/testify v1.8.4
2727
github.com/vishvananda/netlink v1.2.1-beta.2
2828
go.uber.org/zap v1.26.0
29-
golang.org/x/net v0.17.0
30-
golang.org/x/sys v0.15.0
31-
google.golang.org/grpc v1.60.1
32-
google.golang.org/protobuf v1.31.0
29+
golang.org/x/net v0.19.0
30+
golang.org/x/sys v0.16.0
31+
google.golang.org/grpc v1.61.0
3332
gopkg.in/natefinch/lumberjack.v2 v2.2.1
3433
gopkg.in/yaml.v2 v2.4.0
35-
helm.sh/helm/v3 v3.13.2
34+
helm.sh/helm/v3 v3.14.0
3635
k8s.io/api v0.29.0
3736
k8s.io/apimachinery v0.29.0
3837
k8s.io/cli-runtime v0.29.0
3938
k8s.io/client-go v0.29.0
40-
sigs.k8s.io/controller-runtime v0.16.3
39+
sigs.k8s.io/controller-runtime v0.17.0
4140
)
4241

4342
require (
@@ -66,16 +65,16 @@ require (
6665
github.com/docker/go-metrics v0.0.1 // indirect
6766
github.com/docker/go-units v0.5.0 // indirect
6867
github.com/emicklei/go-restful/v3 v3.11.0 // indirect
69-
github.com/evanphx/json-patch v5.6.0+incompatible // indirect
70-
github.com/evanphx/json-patch/v5 v5.6.0 // indirect
68+
github.com/evanphx/json-patch v5.7.0+incompatible // indirect
69+
github.com/evanphx/json-patch/v5 v5.8.0 // indirect
7170
github.com/exponent-io/jsonpath v0.0.0-20151013193312-d6023ce2651d // indirect
7271
github.com/fatih/color v1.13.0 // indirect
7372
github.com/felixge/httpsnoop v1.0.3 // indirect
74-
github.com/fsnotify/fsnotify v1.6.0 // indirect
73+
github.com/fsnotify/fsnotify v1.7.0 // indirect
7574
github.com/go-errors/errors v1.4.2 // indirect
7675
github.com/go-gorp/gorp/v3 v3.1.0 // indirect
7776
github.com/go-logr/stdr v1.2.2 // indirect
78-
github.com/go-logr/zapr v1.2.4 // indirect
77+
github.com/go-logr/zapr v1.3.0 // indirect
7978
github.com/go-openapi/jsonpointer v0.19.6 // indirect
8079
github.com/go-openapi/jsonreference v0.20.2 // indirect
8180
github.com/go-openapi/swag v0.22.3 // indirect
@@ -88,7 +87,7 @@ require (
8887
github.com/google/gofuzz v1.2.0 // indirect
8988
github.com/google/pprof v0.0.0-20230323073829-e72429f035bd // indirect
9089
github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 // indirect
91-
github.com/google/uuid v1.3.1 // indirect
90+
github.com/google/uuid v1.4.0 // indirect
9291
github.com/gorilla/mux v1.8.0 // indirect
9392
github.com/gorilla/websocket v1.5.0 // indirect
9493
github.com/gosuri/uitable v0.0.4 // indirect
@@ -111,7 +110,7 @@ require (
111110
github.com/mattn/go-colorable v0.1.13 // indirect
112111
github.com/mattn/go-isatty v0.0.17 // indirect
113112
github.com/mattn/go-runewidth v0.0.9 // indirect
114-
github.com/matttproud/golang_protobuf_extensions v1.0.4 // indirect
113+
github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 // indirect
115114
github.com/mitchellh/copystructure v1.2.0 // indirect
116115
github.com/mitchellh/go-wordwrap v1.0.1 // indirect
117116
github.com/mitchellh/reflectwalk v1.0.2 // indirect
@@ -128,13 +127,13 @@ require (
128127
github.com/opencontainers/image-spec v1.1.0-rc5 // indirect
129128
github.com/peterbourgon/diskv v2.0.1+incompatible // indirect
130129
github.com/pmezard/go-difflib v1.0.0 // indirect
131-
github.com/prometheus/procfs v0.11.1 // indirect
130+
github.com/prometheus/procfs v0.12.0 // indirect
132131
github.com/rubenv/sql-migrate v1.5.2 // indirect
133132
github.com/russross/blackfriday/v2 v2.1.0 // indirect
134133
github.com/safchain/ethtool v0.3.0 // indirect
135134
github.com/shopspring/decimal v1.3.1 // indirect
136135
github.com/spf13/cast v1.5.0 // indirect
137-
github.com/spf13/cobra v1.7.0 // indirect
136+
github.com/spf13/cobra v1.8.0 // indirect
138137
github.com/vishvananda/netns v0.0.4 // indirect
139138
github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb // indirect
140139
github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect
@@ -148,30 +147,31 @@ require (
148147
go.uber.org/multierr v1.11.0 // indirect
149148
golang.org/x/crypto v0.17.0 // indirect
150149
golang.org/x/exp v0.0.0-20230315142452-642cacee5cc0 // indirect
151-
golang.org/x/oauth2 v0.13.0 // indirect
152-
golang.org/x/sync v0.4.0 // indirect
150+
golang.org/x/oauth2 v0.14.0 // indirect
151+
golang.org/x/sync v0.5.0 // indirect
153152
golang.org/x/term v0.15.0 // indirect
154153
golang.org/x/text v0.14.0 // indirect
155154
golang.org/x/time v0.3.0 // indirect
156-
golang.org/x/tools v0.14.0 // indirect
155+
golang.org/x/tools v0.16.1 // indirect
157156
gomodules.xyz/jsonpatch/v2 v2.4.0 // indirect
158157
google.golang.org/appengine v1.6.8 // indirect
159-
google.golang.org/genproto/googleapis/rpc v0.0.0-20231002182017-d307bd883b97 // indirect
158+
google.golang.org/genproto/googleapis/rpc v0.0.0-20231106174013-bbf56f31fb17 // indirect
159+
google.golang.org/protobuf v1.31.0 // indirect
160160
gopkg.in/inf.v0 v0.9.1 // indirect
161161
gopkg.in/yaml.v3 v3.0.1 // indirect
162-
k8s.io/apiextensions-apiserver v0.28.3 // indirect
163-
k8s.io/apiserver v0.28.3 // indirect
164-
k8s.io/component-base v0.28.3 // indirect
162+
k8s.io/apiextensions-apiserver v0.29.0 // indirect
163+
k8s.io/apiserver v0.29.0 // indirect
164+
k8s.io/component-base v0.29.0 // indirect
165165
k8s.io/klog/v2 v2.110.1 // indirect
166166
k8s.io/kube-openapi v0.0.0-20231010175941-2dd684a91f00 // indirect
167-
k8s.io/kubectl v0.28.2 // indirect
167+
k8s.io/kubectl v0.29.0 // indirect
168168
k8s.io/utils v0.0.0-20230726121419-3b25d923346b // indirect
169169
oras.land/oras-go v1.2.4 // indirect
170170
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect
171171
sigs.k8s.io/kustomize/api v0.13.5-0.20230601165947-6ce0bf390ce3 // indirect
172172
sigs.k8s.io/kustomize/kyaml v0.14.3-0.20230601165947-6ce0bf390ce3 // indirect
173173
sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect
174-
sigs.k8s.io/yaml v1.3.0 // indirect
174+
sigs.k8s.io/yaml v1.4.0 // indirect
175175
)
176176

177177
replace gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776 => gopkg.in/yaml.v3 v3.0.1

0 commit comments

Comments
 (0)