Skip to content

Commit 8ff0b6e

Browse files
authored
Merge pull request #783 from cprivitere/release-0.9.0
Release-0.9.0
2 parents c9867b5 + 1a39e5f commit 8ff0b6e

16 files changed

+116
-209
lines changed

.golangci.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
run:
22
timeout: 10m
3-
go: "1.22"
3+
go: "1.21"
44
build-tags:
55
- tools
66
- e2e

Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
# limitations under the License.
1616

1717
# Build the manager binary
18-
ARG GOVER=1.22.5
18+
ARG GOVER=1.21.12
1919
FROM golang:${GOVER} as builder
2020

2121
WORKDIR /workspace

clusterctl-settings.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"name": "infrastructure-packet",
33
"config": {
44
"componentsFile": "infrastructure-components.yaml",
5-
"nextVersion": "v0.8.99"
5+
"nextVersion": "v0.9.99"
66
}
77
}
88

docs/RELEASE.md

+19-7
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,21 @@ This is normally performed by our CI system. However, there are important steps
1010

1111
In order to cut a release, you must:
1212

13-
1. If this is a new major or minor version - but **not** just a patch change - update [metadata.yaml](../metadata.yaml) to add it, and map it to the correct cluster-api contract version
14-
1. Update [packet-ci-actions.yaml](../test/e2e/config/packet-ci-actions.yaml) and [packet-ci.yaml](../test/e2e/config/packet-ci.yaml) to use the new version number for the current and/or new contract version of the packet InfrastructureProvider.
15-
1. If this is a new major or minor version - but **not** just a patch chagne - update [packet-ci-actions.yaml](../test/e2e/config/packet-ci-actions.yaml) and [packet-ci.yaml](../test/e2e/config/packet-ci.yaml) to have a new "next" version number for the latest contract version of the packet InfrastructureProvider.
13+
1. Update [packet-ci-actions.yaml](../test/e2e/config/packet-ci-actions.yaml) and [packet-ci.yaml](../test/e2e/config/packet-ci.yaml) to use the new version number for the current and/or new contract version of the packet InfrastructureProvider. (ie. v0.9.1)
14+
1. If this is a new major or minor version - but **not** just a patch change:
15+
16+
- Update [metadata.yaml](../metadata.yaml) to add it, and map it to the correct cluster-api contract version
17+
18+
```yaml
19+
- major: 0
20+
minor: 10
21+
contract: v1beta1
22+
```
23+
24+
- Update [packet-ci-actions.yaml](../test/e2e/config/packet-ci-actions.yaml) and [packet-ci.yaml](../test/e2e/config/packet-ci.yaml) to have a new "next" version number for the latest contract version of the packet InfrastructureProvider (ie. v0.11.99).
25+
- Update clusterctl-settings.json to have the new "next" version number for the latest contract version of the packet InfrastructureProvider (ie. v0.11.99).
26+
27+
1. Review and update the versions of installed deployments like CPEM and kube-vip inside the templates.
1628
1. Commit the changes.
1729
1. Push out your branch, open a PR and merge the changes
1830
1. Wait for the Continuous Integration github action to finish running
@@ -21,7 +33,7 @@ In order to cut a release, you must:
2133

2234
## How A Release Happens
2335

24-
* GitHub Actions detects a new tag has been pushed
25-
* CI builds docker images for each supported architecture as well as a multi-arch manifest, and tags it with the semver tag of the release, e.g. `v0.4.0`
26-
* CI creates the release in `out/release`, the equivalent of `make release`
27-
* CI copies the artifacts in `out/release/*` to the github releases
36+
- GitHub Actions detects a new tag has been pushed
37+
- CI builds docker images for each supported architecture as well as a multi-arch manifest, and tags it with the semver tag of the release, e.g. `v0.4.0`
38+
- CI creates the release in `out/release`, the equivalent of `make release`
39+
- CI copies the artifacts in `out/release/*` to the github releases

hack/ensure-go.sh

+2-2
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ set -o pipefail
2222
verify_go_version() {
2323
if [[ -z "$(command -v go)" ]]; then
2424
if [[ "${INSTALL_GO:-"true"}" == "true" ]]; then
25-
curl -sSL https://golang.org/dl/go${GO_VERSION:-"1.22"}.linux-amd64.tar.gz | tar -C /usr/local -xzf -
25+
curl -sSL https://golang.org/dl/go${GO_VERSION:-"1.21"}.linux-amd64.tar.gz | tar -C /usr/local -xzf -
2626
export PATH=/usr/local/go/bin:$PATH
2727
export PATH=$(go env GOPATH)/bin:$PATH
2828
else
@@ -37,7 +37,7 @@ EOF
3737
local go_version
3838
IFS=" " read -ra go_version <<< "$(go version)"
3939
local minimum_go_version
40-
minimum_go_version=go1.22
40+
minimum_go_version=go1.21
4141
if [[ "${minimum_go_version}" != $(echo -e "${minimum_go_version}\n${go_version[2]}" | sort -s -t. -k 1,1 -k 2,2n -k 3,3n | head -n1) && "${go_version[2]}" != "devel" ]]; then
4242
cat <<EOF
4343
Detected go version: ${go_version[*]}.

metadata.yaml

+3
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@
66
apiVersion: clusterctl.cluster.x-k8s.io/v1alpha3
77
kind: Metadata
88
releaseSeries:
9+
- major: 0
10+
minor: 9
11+
contract: v1beta1
912
- major: 0
1013
minor: 8
1114
contract: v1beta1

pkg/cloud/packet/client.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -358,7 +358,7 @@ func (p *Client) EnsureNodeBGPEnabled(ctx context.Context, id string) error {
358358
_, response, err := p.DevicesApi.CreateBgpSession(ctx, id).BGPSessionInput(req).Execute() //nolint:bodyclose // see https://github.com/timakin/bodyclose/issues/42
359359
// if we already had one, then we can ignore the error
360360
// this really should be a 409, but 422 is what is returned
361-
if response != nil && response.StatusCode == 422 && strings.Contains(err.Error(), "already has session") {
361+
if response != nil && response.StatusCode == http.StatusUnprocessableEntity && strings.Contains(err.Error(), "already has session") {
362362
err = nil
363363
}
364364
return err

templates/cluster-template-emlb-crs-cni.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ spec:
160160
echo "complete -o default -F __start_kubectl k" >> $HOME/.bashrc
161161
if [ -f "/run/kubeadm/kubeadm.yaml" ]; then
162162
export KUBECONFIG=/etc/kubernetes/admin.conf
163-
export CPEM_YAML=https://github.com/equinix/cloud-provider-equinix-metal/releases/download/${CPEM_VERSION:=v3.8.0}/deployment.yaml
163+
export CPEM_YAML=https://github.com/equinix/cloud-provider-equinix-metal/releases/download/${CPEM_VERSION:=v3.8.1}/deployment.yaml
164164
export SECRET_DATA='cloud-sa.json=''{"apiKey": "{{ .apiKey }}","projectID": "${PROJECT_ID}"}'''
165165
kubectl create secret generic -n kube-system metal-cloud-config --from-literal="$${SECRET_DATA}" || (sleep 1 && kubectl create secret generic -n kube-system metal-cloud-config --from-literal="$${SECRET_DATA}") || (sleep 1 && kubectl create secret generic -n kube-system metal-cloud-config --from-literal="$${SECRET_DATA}")
166166
kubectl apply -f $${CPEM_YAML} || (sleep 1 && kubectl apply -f $${CPEM_YAML}) || (sleep 1 && kubectl apply -f $${CPEM_YAML})

templates/cluster-template-emlb.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ spec:
139139
echo "complete -o default -F __start_kubectl k" >> $HOME/.bashrc
140140
if [ -f "/run/kubeadm/kubeadm.yaml" ]; then
141141
export KUBECONFIG=/etc/kubernetes/admin.conf
142-
export CPEM_YAML=https://github.com/equinix/cloud-provider-equinix-metal/releases/download/${CPEM_VERSION:=v3.8.0}/deployment.yaml
142+
export CPEM_YAML=https://github.com/equinix/cloud-provider-equinix-metal/releases/download/${CPEM_VERSION:=v3.8.1}/deployment.yaml
143143
export SECRET_DATA='cloud-sa.json=''{"apiKey": "{{ .apiKey }}","projectID": "${PROJECT_ID}"}'''
144144
kubectl create secret generic -n kube-system metal-cloud-config --from-literal="$${SECRET_DATA}" || (sleep 1 && kubectl create secret generic -n kube-system metal-cloud-config --from-literal="$${SECRET_DATA}") || (sleep 1 && kubectl create secret generic -n kube-system metal-cloud-config --from-literal="$${SECRET_DATA}")
145145
kubectl apply -f $${CPEM_YAML} || (sleep 1 && kubectl apply -f $${CPEM_YAML}) || (sleep 1 && kubectl apply -f $${CPEM_YAML})

templates/cluster-template-kube-vip-crs-cni.yaml

+4-2
Original file line numberDiff line numberDiff line change
@@ -165,9 +165,10 @@ spec:
165165
kubectl create secret generic -n kube-system metal-cloud-config --from-literal="$${SECRET_DATA}" || (sleep 1 && kubectl create secret generic -n kube-system metal-cloud-config --from-literal="$${SECRET_DATA}") || (sleep 1 && kubectl create secret generic -n kube-system metal-cloud-config --from-literal="$${SECRET_DATA}")
166166
kubectl apply -f $${CPEM_YAML} || (sleep 1 && kubectl apply -f $${CPEM_YAML}) || (sleep 1 && kubectl apply -f $${CPEM_YAML})
167167
else
168-
KVVERSION="${KUBE_VIP_VERSION:=v0.6.4}"
168+
KVVERSION="${KUBE_VIP_VERSION:=v0.8.1}"
169169
ctr image pull ghcr.io/kube-vip/kube-vip:$${KVVERSION}
170170
ctr run --rm --net-host ghcr.io/kube-vip/kube-vip:$KVVERSION vip /kube-vip manifest pod \
171+
--cidr 32 \
171172
--interface "lo" \
172173
--vip "{{ .controlPlaneEndpoint }}" \
173174
--controlplane \
@@ -225,9 +226,10 @@ spec:
225226
done
226227
if [ -f "/run/kubeadm/kubeadm.yaml" ]; then
227228
ip addr add {{ .controlPlaneEndpoint }} dev lo
228-
KVVERSION="${KUBE_VIP_VERSION:=v0.6.4}"
229+
KVVERSION="${KUBE_VIP_VERSION:=v0.8.1}"
229230
ctr image pull ghcr.io/kube-vip/kube-vip:$${KVVERSION}
230231
ctr run --rm --net-host ghcr.io/kube-vip/kube-vip:$KVVERSION vip /kube-vip manifest pod \
232+
--cidr 32 \
231233
--interface "lo" \
232234
--vip "{{ .controlPlaneEndpoint }}" \
233235
--controlplane \

templates/cluster-template-kube-vip.yaml

+4-2
Original file line numberDiff line numberDiff line change
@@ -144,9 +144,10 @@ spec:
144144
kubectl create secret generic -n kube-system metal-cloud-config --from-literal="$${SECRET_DATA}" || (sleep 1 && kubectl create secret generic -n kube-system metal-cloud-config --from-literal="$${SECRET_DATA}") || (sleep 1 && kubectl create secret generic -n kube-system metal-cloud-config --from-literal="$${SECRET_DATA}")
145145
kubectl apply -f $${CPEM_YAML} || (sleep 1 && kubectl apply -f $${CPEM_YAML}) || (sleep 1 && kubectl apply -f $${CPEM_YAML})
146146
else
147-
KVVERSION="${KUBE_VIP_VERSION:=v0.6.4}"
147+
KVVERSION="${KUBE_VIP_VERSION:=v0.8.1}"
148148
ctr image pull ghcr.io/kube-vip/kube-vip:$${KVVERSION}
149149
ctr run --rm --net-host ghcr.io/kube-vip/kube-vip:$KVVERSION vip /kube-vip manifest pod \
150+
--cidr 32 \
150151
--interface "lo" \
151152
--vip "{{ .controlPlaneEndpoint }}" \
152153
--controlplane \
@@ -204,9 +205,10 @@ spec:
204205
done
205206
if [ -f "/run/kubeadm/kubeadm.yaml" ]; then
206207
ip addr add {{ .controlPlaneEndpoint }} dev lo
207-
KVVERSION="${KUBE_VIP_VERSION:=v0.6.4}"
208+
KVVERSION="${KUBE_VIP_VERSION:=v0.8.1}"
208209
ctr image pull ghcr.io/kube-vip/kube-vip:$${KVVERSION}
209210
ctr run --rm --net-host ghcr.io/kube-vip/kube-vip:$KVVERSION vip /kube-vip manifest pod \
211+
--cidr 32 \
210212
--interface "lo" \
211213
--vip "{{ .controlPlaneEndpoint }}" \
212214
--controlplane \

templates/experimental-emlb/kustomization.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ patches:
7575
echo "complete -o default -F __start_kubectl k" >> $HOME/.bashrc
7676
if [ -f "/run/kubeadm/kubeadm.yaml" ]; then
7777
export KUBECONFIG=/etc/kubernetes/admin.conf
78-
export CPEM_YAML=https://github.com/equinix/cloud-provider-equinix-metal/releases/download/${CPEM_VERSION:=v3.8.0}/deployment.yaml
78+
export CPEM_YAML=https://github.com/equinix/cloud-provider-equinix-metal/releases/download/${CPEM_VERSION:=v3.8.1}/deployment.yaml
7979
export SECRET_DATA='cloud-sa.json=''{"apiKey": "{{ .apiKey }}","projectID": "${PROJECT_ID}"}'''
8080
kubectl create secret generic -n kube-system metal-cloud-config --from-literal="$${SECRET_DATA}" || (sleep 1 && kubectl create secret generic -n kube-system metal-cloud-config --from-literal="$${SECRET_DATA}") || (sleep 1 && kubectl create secret generic -n kube-system metal-cloud-config --from-literal="$${SECRET_DATA}")
8181
kubectl apply -f $${CPEM_YAML} || (sleep 1 && kubectl apply -f $${CPEM_YAML}) || (sleep 1 && kubectl apply -f $${CPEM_YAML})

templates/experimental-kube-vip/kustomization.yaml

+4-2
Original file line numberDiff line numberDiff line change
@@ -65,9 +65,10 @@ patches:
6565
done
6666
if [ -f "/run/kubeadm/kubeadm.yaml" ]; then
6767
ip addr add {{ .controlPlaneEndpoint }} dev lo
68-
KVVERSION="${KUBE_VIP_VERSION:=v0.6.4}"
68+
KVVERSION="${KUBE_VIP_VERSION:=v0.8.1}"
6969
ctr image pull ghcr.io/kube-vip/kube-vip:$${KVVERSION}
7070
ctr run --rm --net-host ghcr.io/kube-vip/kube-vip:$KVVERSION vip /kube-vip manifest pod \
71+
--cidr 32 \
7172
--interface "lo" \
7273
--vip "{{ .controlPlaneEndpoint }}" \
7374
--controlplane \
@@ -91,9 +92,10 @@ patches:
9192
kubectl create secret generic -n kube-system metal-cloud-config --from-literal="$${SECRET_DATA}" || (sleep 1 && kubectl create secret generic -n kube-system metal-cloud-config --from-literal="$${SECRET_DATA}") || (sleep 1 && kubectl create secret generic -n kube-system metal-cloud-config --from-literal="$${SECRET_DATA}")
9293
kubectl apply -f $${CPEM_YAML} || (sleep 1 && kubectl apply -f $${CPEM_YAML}) || (sleep 1 && kubectl apply -f $${CPEM_YAML})
9394
else
94-
KVVERSION="${KUBE_VIP_VERSION:=v0.6.4}"
95+
KVVERSION="${KUBE_VIP_VERSION:=v0.8.1}"
9596
ctr image pull ghcr.io/kube-vip/kube-vip:$${KVVERSION}
9697
ctr run --rm --net-host ghcr.io/kube-vip/kube-vip:$KVVERSION vip /kube-vip manifest pod \
98+
--cidr 32 \
9799
--interface "lo" \
98100
--vip "{{ .controlPlaneEndpoint }}" \
99101
--controlplane \

0 commit comments

Comments
 (0)