Skip to content

Commit eb82595

Browse files
committed
e2e test uses official Kubernetes version
Currently e2e test creates Kubernetes cluster using the manifest patched by e2e-conformance_patch.yaml.tpl to use Kubernetes CI version. This commit removes CI version patch from e2e-conformance_patch.yaml.tpl and make e2e test to create Kubernetes cluster with fixed official Kubernetes version.
1 parent d543466 commit eb82595

File tree

4 files changed

+2
-190
lines changed

4 files changed

+2
-190
lines changed

.zuul/playbooks/run.yaml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,6 @@
7373
cat /tmp/clouds.yaml
7474
7575
export ARTIFACTS=/home/zuul/workspace/logs/_artifacts
76-
export KUBERNETES_VERSION_SERIES={{ k8s_version_series }}
7776
export OPENSTACK_DNS_NAMESERVERS=8.8.8.8
7877
export CONTROL_PLANE_MACHINE_COUNT=1
7978
export WORKER_MACHINE_COUNT=1

Makefile

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -379,8 +379,6 @@ create-cluster: $(CLUSTERCTL) $(KUSTOMIZE) $(ENVSUBST) ## Create a development K
379379

380380
# Patch Kubernetes version
381381
cat ./hack/ci/e2e-conformance/e2e-conformance_patch.yaml.tpl | \
382-
sed "s|\$${OPENSTACK_CLOUD_PROVIDER_CONF_B64}|$(OPENSTACK_CLOUD_PROVIDER_CONF_B64)|" | \
383-
sed "s|\$${OPENSTACK_CLOUD_CACERT_B64}|$(OPENSTACK_CLOUD_CACERT_B64)|" | \
384382
sed "s|\$${KUBERNETES_VERSION}|$(KUBERNETES_VERSION)|" | \
385383
sed "s|\$${CLUSTER_NAME}|$(CLUSTER_NAME)|" \
386384
> ./hack/ci/e2e-conformance/e2e-conformance_patch.yaml

hack/ci/e2e-conformance.sh

Lines changed: 2 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ OPENSTACK_NODE_MACHINE_FLAVOR=${OPENSTACK_NODE_MACHINE_FLAVOR:-"m1.small"}
2727
OPENSTACK_CONTROL_PLANE_MACHINE_FLAVOR=${OPENSTACK_CONTROL_PLANE_MACHINE_FLAVOR:-"m1.medium"}
2828
OPENSTACK_CLUSTER_TEMPLATE=${OPENSTACK_CLUSTER_TEMPLATE:-"./templates/cluster-template-without-lb.yaml"}
2929
CLUSTER_NAME=${CLUSTER_NAME:-"capi-quickstart"}
30-
KUBERNETES_VERSION_SERIES=${KUBERNETES_VERSION_SERIES:-"1.17"}
30+
KUBERNETES_VERSION=${KUBERNETES_VERSION:-"v1.18.6"}
3131
TIMESTAMP=$(date +"%Y-%m-%dT%H:%M:%SZ")
3232

3333
ARTIFACTS="${ARTIFACTS:-${PWD}/_artifacts}"
@@ -214,12 +214,7 @@ build() {
214214

215215
git clone https://github.com/kubernetes/kubernetes.git
216216
cd kubernetes
217-
if [[ "${KUBERNETES_VERSION_SERIES}" == "master" ]]
218-
then
219-
git checkout master
220-
else
221-
git checkout "release-${KUBERNETES_VERSION_SERIES}"
222-
fi
217+
git checkout -b ${KUBERNETES_VERSION} "refs/tags/${KUBERNETES_VERSION}"
223218
fi
224219

225220
pushd "$(go env GOPATH)/src/k8s.io/kubernetes"
@@ -262,15 +257,6 @@ create_cluster() {
262257
# exports the b64 env vars used below
263258
source ${REPO_ROOT}/templates/env.rc ${OPENSTACK_CLOUD_YAML_FILE} ${CLUSTER_NAME}
264259

265-
# KUBERNETES_VERSION will be used via e2e-conformance_patch.yaml
266-
# TODO: revert to https://dl.k8s.io/ci/latest-green.txt once https://github.com/kubernetes/release/issues/897 is fixed.
267-
if [[ "${KUBERNETES_VERSION_SERIES}" == "master" ]]
268-
then
269-
KUBERNETES_VERSION=$(curl -sSL https://dl.k8s.io/ci/k8s-master.txt)
270-
else
271-
KUBERNETES_VERSION=$(curl -sSL https://dl.k8s.io/ci/latest-${KUBERNETES_VERSION_SERIES}.txt)
272-
fi
273-
274260
OPENSTACK_CLOUD_CACERT_B64=${OPENSTACK_CLOUD_CACERT_B64} \
275261
OPENSTACK_CLOUD_PROVIDER_CONF_B64=${OPENSTACK_CLOUD_PROVIDER_CONF_B64} \
276262
OPENSTACK_CLOUD_YAML_B64=${OPENSTACK_CLOUD_YAML_B64} \

hack/ci/e2e-conformance/e2e-conformance_patch.yaml.tpl

Lines changed: 0 additions & 171 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,6 @@ metadata:
44
name: "${CLUSTER_NAME}-control-plane"
55
spec:
66
kubeadmConfigSpec:
7-
clusterConfiguration:
8-
kubernetesVersion: "${KUBERNETES_VERSION}"
97
initConfiguration:
108
nodeRegistration:
119
kubeletExtraArgs:
@@ -15,86 +13,6 @@ spec:
1513
kubeletExtraArgs:
1614
v: "8"
1715
verbosity: 8
18-
preKubeadmCommands:
19-
- bash -c /tmp/kubeadm-bootstrap.sh
20-
files:
21-
- path: /etc/kubernetes/cloud.conf
22-
owner: root
23-
permissions: "0600"
24-
content: ${OPENSTACK_CLOUD_PROVIDER_CONF_B64}
25-
encoding: base64
26-
- path: /etc/certs/cacert
27-
owner: root
28-
permissions: "0600"
29-
content: ${OPENSTACK_CLOUD_CACERT_B64}
30-
encoding: base64
31-
- path: /tmp/kubeadm-bootstrap.sh
32-
owner: "root:root"
33-
permissions: "0744"
34-
content: |
35-
#!/bin/bash
36-
37-
set -o nounset
38-
set -o pipefail
39-
set -o errexit
40-
set -e
41-
42-
[[ $(id -u) != 0 ]] && SUDO="sudo" || SUDO=""
43-
44-
# This script installs binaries and containers that are a result of the CI and release builds.
45-
# It runs '... --version' commands to verify that the binaries are correctly installed
46-
47-
LINE_SEPARATOR="*************************************************"
48-
echo "$LINE_SEPARATOR"
49-
50-
echo "$(date): stopping kubelet"
51-
${SUDO} systemctl stop kubelet
52-
53-
echo "$(date): debug output"
54-
ps aux
55-
top -b -n 1
56-
57-
CI_VERSION=${CI_VERSION:-"${KUBERNETES_VERSION}"}
58-
if [[ "${CI_VERSION}" != "" ]]; then
59-
CI_DIR=/tmp/k8s-ci
60-
mkdir -p $CI_DIR
61-
# replace + with %2B for the URL
62-
CI_URL="https://storage.googleapis.com/kubernetes-release-dev/ci/${CI_VERSION//+/%2B}-bazel/bin/linux/amd64"
63-
declare -a BINARIES_TO_TEST=("kubectl" "kubelet" "kubeadm")
64-
declare -a CONTAINERS_TO_TEST=("kube-apiserver" "kube-controller-manager" "kube-scheduler" "kube-proxy")
65-
CONTAINER_EXT="tar"
66-
67-
echo "* testing CI version $CI_VERSION"
68-
69-
for CI_BINARY in "${BINARIES_TO_TEST[@]}"; do
70-
echo "$(date): downloading binary $CI_URL/$CI_BINARY"
71-
# move old binary away to avoid err "Text file busy"
72-
${SUDO} mv /usr/bin/${CI_BINARY} /usr/bin/${CI_BINARY}.bak
73-
${SUDO} curl --retry 5 -sS "${CI_URL}/${CI_BINARY}" -o "${CI_DIR}/${CI_BINARY}"
74-
${SUDO} cp ${CI_DIR}/${CI_BINARY} /usr/bin/${CI_BINARY}
75-
${SUDO} chmod +x /usr/bin/${CI_BINARY}
76-
echo "$(date): downloading binary $CI_URL/$CI_BINARY finished"
77-
done
78-
79-
for CI_CONTAINER in "${CONTAINERS_TO_TEST[@]}"; do
80-
echo "$(date): downloading container $CI_URL/$CI_CONTAINER.$CONTAINER_EXT"
81-
${SUDO} curl --retry 5 -sS "${CI_URL}/$CI_CONTAINER.$CONTAINER_EXT" -o "$CI_DIR/$CI_CONTAINER.$CONTAINER_EXT"
82-
${SUDO} ctr -n k8s.io images import "$CI_DIR/$CI_CONTAINER.$CONTAINER_EXT" || echo "* ignoring expected 'ctr images import' result"
83-
${SUDO} ctr -n k8s.io images tag k8s.gcr.io/$CI_CONTAINER-amd64:"${CI_VERSION//+/_}" k8s.gcr.io/$CI_CONTAINER:"${CI_VERSION//+/_}"
84-
${SUDO} ctr -n k8s.io images tag k8s.gcr.io/$CI_CONTAINER-amd64:"${CI_VERSION//+/_}" gcr.io/kubernetes-ci-images/$CI_CONTAINER:"${CI_VERSION//+/_}"
85-
echo "$(date): downloading container $CI_URL/$CI_CONTAINER.$CONTAINER_EXT finished"
86-
done
87-
fi
88-
89-
echo "$(date): checking binary versions"
90-
91-
echo "ctr version: " $(ctr version)
92-
echo "kubeadm version: " $(kubeadm version -o=short)
93-
echo "kubectl version: " $(kubectl version --client=true --short=true)
94-
echo "kubelet version: " $(kubelet --version)
95-
96-
echo "$LINE_SEPARATOR"
97-
version: "${KUBERNETES_VERSION}"
9816
---
9917
apiVersion: bootstrap.cluster.x-k8s.io/v1alpha3
10018
kind: KubeadmConfigTemplate
@@ -104,92 +22,3 @@ spec:
10422
template:
10523
spec:
10624
verbosity: 8
107-
preKubeadmCommands:
108-
- bash -c /tmp/kubeadm-bootstrap.sh
109-
files:
110-
- content: ${OPENSTACK_CLOUD_PROVIDER_CONF_B64}
111-
encoding: base64
112-
owner: root
113-
path: /etc/kubernetes/cloud.conf
114-
permissions: "0600"
115-
- content: ${OPENSTACK_CLOUD_CACERT_B64}
116-
encoding: base64
117-
owner: root
118-
path: /etc/certs/cacert
119-
permissions: "0600"
120-
- path: /tmp/kubeadm-bootstrap.sh
121-
owner: "root:root"
122-
permissions: "0744"
123-
content: |
124-
#!/bin/bash
125-
126-
set -o nounset
127-
set -o pipefail
128-
set -o errexit
129-
set -e
130-
131-
[[ $(id -u) != 0 ]] && SUDO="sudo" || SUDO=""
132-
133-
# This script installs binaries and containers that are a result of the CI and release builds.
134-
# It runs '... --version' commands to verify that the binaries are correctly installed
135-
136-
LINE_SEPARATOR="*************************************************"
137-
echo "$LINE_SEPARATOR"
138-
139-
echo "$(date): stopping kubelet"
140-
${SUDO} systemctl stop kubelet
141-
142-
echo "$(date): debug output"
143-
ps aux
144-
top -b -n 1
145-
146-
CI_VERSION=${CI_VERSION:-"${KUBERNETES_VERSION}"}
147-
if [[ "${CI_VERSION}" != "" ]]; then
148-
CI_DIR=/tmp/k8s-ci
149-
mkdir -p $CI_DIR
150-
# replace + with %2B for the URL
151-
CI_URL="https://storage.googleapis.com/kubernetes-release-dev/ci/${CI_VERSION//+/%2B}-bazel/bin/linux/amd64"
152-
declare -a BINARIES_TO_TEST=("kubectl" "kubelet" "kubeadm")
153-
declare -a CONTAINERS_TO_TEST=("kube-proxy")
154-
CONTAINER_EXT="tar"
155-
156-
echo "* testing CI version $CI_VERSION"
157-
158-
for CI_BINARY in "${BINARIES_TO_TEST[@]}"; do
159-
echo "$(date): downloading binary $CI_URL/$CI_BINARY"
160-
# move old binary away to avoid err "Text file busy"
161-
${SUDO} mv /usr/bin/${CI_BINARY} /usr/bin/${CI_BINARY}.bak
162-
${SUDO} curl --retry 5 -sS "${CI_URL}/${CI_BINARY}" -o "${CI_DIR}/${CI_BINARY}"
163-
${SUDO} cp ${CI_DIR}/${CI_BINARY} /usr/bin/${CI_BINARY}
164-
${SUDO} chmod +x /usr/bin/${CI_BINARY}
165-
echo "$(date): downloading binary $CI_URL/$CI_BINARY finished"
166-
done
167-
168-
for CI_CONTAINER in "${CONTAINERS_TO_TEST[@]}"; do
169-
echo "$(date): downloading container $CI_URL/$CI_CONTAINER.$CONTAINER_EXT"
170-
${SUDO} curl --retry 5 -sS "${CI_URL}/$CI_CONTAINER.$CONTAINER_EXT" -o "$CI_DIR/$CI_CONTAINER.$CONTAINER_EXT"
171-
${SUDO} ctr -n k8s.io images import "$CI_DIR/$CI_CONTAINER.$CONTAINER_EXT" || echo "* ignoring expected 'ctr images import' result"
172-
${SUDO} ctr -n k8s.io images tag k8s.gcr.io/$CI_CONTAINER-amd64:"${CI_VERSION//+/_}" k8s.gcr.io/$CI_CONTAINER:"${CI_VERSION//+/_}"
173-
${SUDO} ctr -n k8s.io images tag k8s.gcr.io/$CI_CONTAINER-amd64:"${CI_VERSION//+/_}" gcr.io/kubernetes-ci-images/$CI_CONTAINER:"${CI_VERSION//+/_}"
174-
echo "$(date): downloading container $CI_URL/$CI_CONTAINER.$CONTAINER_EXT finished"
175-
done
176-
fi
177-
178-
echo "$(date): checking binary versions"
179-
180-
echo "ctr version: " $(ctr version)
181-
echo "kubeadm version: " $(kubeadm version -o=short)
182-
echo "kubectl version: " $(kubectl version --client=true --short=true)
183-
echo "kubelet version: " $(kubelet --version)
184-
185-
echo "$LINE_SEPARATOR"
186-
---
187-
apiVersion: cluster.x-k8s.io/v1alpha3
188-
kind: MachineDeployment
189-
metadata:
190-
name: "${CLUSTER_NAME}-md-0"
191-
spec:
192-
clusterName: "${CLUSTER_NAME}"
193-
template:
194-
spec:
195-
version: "${KUBERNETES_VERSION}"

0 commit comments

Comments
 (0)