7
7
1 . Update ` generate_eks.py ` if necessary
8
8
1 . Check that ` eksctl utils write-kubeconfig ` log filter still behaves as desired, and logs in ` cortex cluster up ` look good.
9
9
1 . Update eksctl on your dev
10
- machine: ` curl --location "https://github.com/weaveworks/eksctl/releases/download/0.51 .0/eksctl_$(uname -s)_amd64.tar.gz" | tar xz -C /tmp && sudo mv -f /tmp/eksctl /usr/local/bin `
11
- 1 . Check if eksctl iam polices changed by comparing the previous version of the eksctl policy docs to the new version's and update ` ./dev/minimum_aws_policy.json ` and ` docs/clusters/management/auth.md ` accordingly. https://github.com/weaveworks/eksctl/blob/v0.51 .0/userdocs/src/usage/minimum-iam-policies.md
10
+ machine: ` curl --location "https://github.com/weaveworks/eksctl/releases/download/v0.67 .0/eksctl_$(uname -s)_amd64.tar.gz" | tar xz -C /tmp && sudo mv -f /tmp/eksctl /usr/local/bin `
11
+ 1 . Check if eksctl iam polices changed by comparing the previous version of the eksctl policy docs to the new version's and update ` ./dev/minimum_aws_policy.json ` and ` docs/clusters/management/auth.md ` accordingly. https://github.com/weaveworks/eksctl/blob/v0.67 .0/userdocs/src/usage/minimum-iam-policies.md
12
12
13
13
## Kubernetes
14
14
36
36
1 . Update the version in ` images/manager/Dockerfile ` and ` images/operator/Dockerfile `
37
37
1 . Update your local version and alert developers
38
38
* Linux:
39
- 1 . ` curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl `
40
- 1 . ` chmod +x ./kubectl `
41
- 1 . ` sudo mv -f ./kubectl /usr/local/bin/kubectl `
42
- 1 . refresh shell
43
- 1 . ` kubectl version `
39
+
40
+ ``` shell
41
+ mkdir -p $HOME /temp && \
42
+ cd $HOME /temp && \
43
+ curl -LO https://storage.googleapis.com/kubernetes-release/release/$( curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt) /bin/linux/amd64/kubectl && \
44
+ chmod +x ./kubectl && \
45
+ sudo mv -f ./kubectl /usr/local/bin/kubectl && \
46
+ if [ -f $HOME /.bash_profile ]; then source $HOME /.bash_profile; else source $HOME /.bashrc; fi && \
47
+ cd - && \
48
+ kubectl version
49
+ ```
50
+
44
51
* Mac:
45
52
1. ` brew upgrade kubernetes-cli`
46
53
1. refresh shell
57
64
58
65
# # AWS CNI
59
66
60
- 1 . Update the CNI version in ` eks_cluster.yaml ` ([ CNI releases] ( https://github.com/aws/amazon-vpc-cni-k8s/releases ) )
67
+ 1. Update the CNI version in ` generate_eks.py ` ([CNI releases](https://github.com/aws/amazon-vpc-cni-k8s/releases))
61
68
1. Update the go module version (see ` Go > Non-versioned modules` section below)
62
69
1. Check if new instance types were added by running the script below (update the two env vars at the top).
63
70
1. If there are new instance types, check if any changes need to be made to ` servicequotas.go` or `validateInstanceType ()` .
64
71
65
72
` ` ` bash
66
- PREV_RELEASE=1.7.10
67
- NEW_RELEASE=1.8.0
73
+ PREV_RELEASE=1.8.0
74
+ NEW_RELEASE=1.9.3
68
75
wget -q -O cni_supported_instances_prev.txt https://github.com/raw/aws/amazon-vpc-cni-k8s/v${PREV_RELEASE} /pkg/awsutils/vpc_ip_resource_limit.go; wget -q -O cni_supported_instances_new.txt https://github.com/raw/aws/amazon-vpc-cni-k8s/v${NEW_RELEASE} /pkg/awsutils/vpc_ip_resource_limit.go; git diff --no-index cni_supported_instances_prev.txt cni_supported_instances_new.txt; rm -rf cni_supported_instances_prev.txt; rm -rf cni_supported_instances_new.txt
69
76
` ` `
70
77
71
78
# # Go
72
79
73
80
1. Find the latest release on Golang' s [release page](https://golang.org/doc/devel/release.html) (
74
81
or [downloads page](https://golang.org/dl/)) and check the changelog
75
- 1 . Search the codebase for the current minor version (e.g. ` 1.16 ` ), update versions as appropriate
82
+ 1. Search the codebase for the current minor version (e.g. `1.17 `), update versions as appropriate
76
83
1. Update your local version and alert developers:
77
84
* Linux:
78
- 1 . ` wget https://dl.google.com/go/go1.16.5.linux-amd64.tar.gz `
79
- 1 . ` tar -xvf go1.16.5.linux-amd64.tar.gz `
80
- 1 . ` sudo rm -rf /usr/local/go `
81
- 1 . ` sudo mv -f go /usr/local `
82
- 1 . ` rm go1.16.5.linux-amd64.tar.gz `
83
- 1 . refresh shell
84
- 1 . ` go version `
85
+
86
+ ```shell
87
+ mkdir -p $HOME/temp
88
+ cd $HOME/temp
89
+ wget https://dl.google.com/go/go1.17.3.linux-amd64.tar.gz && \
90
+ tar -xvf go1.17.3.linux-amd64.tar.gz && \
91
+ sudo rm -rf /usr/local/go && \
92
+ sudo mv -f go /usr/local && \
93
+ rm go1.17.3.linux-amd64.tar.gz && \
94
+ if [ -f $HOME/.bash_profile ]; then source $HOME/.bash_profile; else source $HOME/.bashrc; fi && \
95
+ cd - && \
96
+ go version
97
+ ```
98
+
85
99
* Mac:
86
- 1 . ` brew upgrade go ` or ` brew install go@1.16 `
100
+ 1. `brew upgrade go` or `brew install go@1.17 `
87
101
1. refresh shell
88
102
1. `go version`
89
103
1. Update go modules as necessary
@@ -92,7 +106,7 @@ wget -q -O cni_supported_instances_prev.txt https://github.com/raw/aw
92
106
93
107
### Kubernetes client
94
108
95
- 1 . Find the latest patch release for the minor kubernetes version that we use (e.g. for k8s 1.20 , use ` client-go ` version ` v0.20 .X ` , where ` X ` is the latest available patch release)
109
+ 1. Find the latest patch [ release](https://github.com/kubernetes/client-go) for the minor kubernetes version that we use (e.g. for k8s 1.21 , use `client-go` version `v0.21 .X`, where `X` is the latest available patch release)
96
110
1. Follow the "Update non-versioned modules" instructions using the updated version for `k8s.io/client-go`
97
111
98
112
### Istio client
@@ -102,7 +116,7 @@ wget -q -O cni_supported_instances_prev.txt https://github.com/raw/aw
102
116
103
117
### docker/engine/client
104
118
105
- 1 . Find the latest tag from [ releases ] ( https://github.com/docker/engine/releases )
119
+ 1. Find the latest tag from [here ](https://github.com/docker/engine/tags )
106
120
1. Follow the "Update non-versioned modules" instructions using the updated version for `docker/engine`
107
121
108
122
_note: docker client installation may be able to be improved,
@@ -131,21 +145,23 @@ see https://github.com/moby/moby/issues/39302#issuecomment-639687466_
131
145
### Non-versioned modules
132
146
133
147
1. `rm -rf go.mod go.sum && go mod init && go clean -modcache`
134
- 1 . ` go get k8s.io/client-go@v0.20.8 && go get k8s.io/apimachinery@v0.20.8 && go get k8s.io/api@v0.20.8 `
135
- 1 . ` go get istio.io/client-go@1.10.2 && go get istio.io/api@1.10.2 `
136
- 1 . ` go get github.com/aws/amazon-vpc-cni-k8s/pkg/awsutils@v1.8.0 `
148
+ 1. `go get k8s.io/client-go@v0.21.6 && go get k8s.io/apimachinery@v0.21.6 && go get k8s.io/api@v0.21.6 `
149
+ 1. `go get istio.io/client-go@v1.11.4 && go get istio.io/api@1.11.4 `
150
+ 1. `go get github.com/aws/amazon-vpc-cni-k8s/pkg/awsutils@v1.9.3 `
137
151
1. `go get github.com/cortexlabs/yaml@31e52ba8433b683c471ef92cf1711fe67671dac5`
138
152
1. `go get github.com/cortexlabs/go-input@8b67a7a7b28d1c45f5c588171b3b50148462b247`
139
153
1. `go get github.com/xlab/[email protected] `
154
+ 1. `go get -u sigs.k8s.io/[email protected] `
140
155
1. `echo -e ' \n replace github.com/docker/docker => github.com/docker/engine v19.03.13' >> go.mod`
141
156
1. `go get -u github.com/docker/distribution`
142
157
1. `go mod tidy`
143
- 1 . For every non-indirect, non-hardcoded dependency in go.mod, update with ` go get -u <path> `
144
- 1 . ` go mod tidy `
145
- 1 . Re-run the relevant hardcoded ` go get ` commands above
146
- 1 . ` go mod tidy `
147
- 1 . ` make test `
148
- 1 . ` go mod tidy `
158
+ 1. Potentially skip these steps
159
+ 1. For every non-indirect, non-hardcoded dependency in go.mod, update with `go get -u <path>`
160
+ 1. `go mod tidy`
161
+ 1. Re-run the relevant hardcoded `go get` commands above
162
+ 1. `go mod tidy`
163
+ 1. `make test`
164
+ 1. `go mod tidy`
149
165
1. Check that the diff in `go.mod` is reasonable
150
166
151
167
## Nvidia device plugin
@@ -188,9 +204,21 @@ see https://github.com/moby/moby/issues/39302#issuecomment-639687466_
188
204
set the tree to the tag for the chosen release, and open `cloudprovider/aws/examples/cluster-autoscaler-autodiscover.yaml`
189
205
(e.g. <https://github.com/kubernetes/autoscaler/blob/cluster-autoscaler-1.20.0/cluster-autoscaler/cloudprovider/aws/examples/cluster-autoscaler-autodiscover.yaml>)
190
206
1. Resolve merge conflicts with the template in `manager/manifests/cluster-autoscaler.yaml.j2`.
191
- 1 . Pull the release branch from the upstream repo to Cortex's fork on [ Github] ( https://github.com/cortexlabs/autoscaler ) .
192
- 1 . Apply the rate-limiter changes from the previous version to the new one (currently sitting on ` cluster-autoscaler-release-1.20 ` branch).
193
- 1 . Update ` -b ` flag's value from ` git clone ` command in ` images/cluster-autoscaler/Dockerfile ` to the branch name of the latest release from Cortex's fork.
207
+ 1. Clone our fork: `git clone [email protected] :cortexlabs/autoscaler.git`
208
+ 1. Checkout our updated branch: `git checkout cluster-autoscaler-1.21.1-cortex`
209
+ 1. List the most recent commit: `git log`
210
+ 1. Reset the latest commit (use the SHA of the last non-cortex commit): `git reset <SHA>`
211
+ 1. `git add *`
212
+ 1. `git stash`
213
+ 1. `git remote add upstream https://github.com/kubernetes/autoscaler.git`
214
+ 1. `git fetch upstream`
215
+ 1. Checkout the appropriate version tag, e.g. `git checkout cluster-autoscaler-1.21.1 -b cluster-autoscaler-1.21.1-cortex`
216
+ 1. `git stash pop`
217
+ 1. Resolve any merge conflicts
218
+ 1. Unstage and check the diff
219
+ 1. `git commit -am "Add rate limiter"`
220
+ 1. `git push origin cluster-autoscaler-1.21.1-cortex`
221
+ 1. Update `images/cluster-autoscaler/Dockerfile` to use the new branch name (e.g. "cluster-autoscaler-1.21.1") in the `-b` flag' s value from ` git clone` .
194
222
1. Match the Go version of the builder in ` images/cluster-autoscaler/Dockerfile` with that of the [cluster autoscaler](https://github.com/kubernetes/autoscaler)' s Dockerfile.
195
223
196
224
## FluentBit
0 commit comments