Skip to content

Commit 4860f60

Browse files
committed
createkubertetesbinariesiso: Saving images in network and dashboard yaml
1 parent 5f8289f commit 4860f60

1 file changed

Lines changed: 18 additions & 6 deletions

File tree

scripts/util/create-kubernetes-binaries-iso.sh

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#!/bin/bash
1+
#!/bin/bash -x
22
# Licensed to the Apache Software Foundation (ASF) under one
33
# or more contributor license agreements. See the NOTICE file
44
# distributed with this work for additional information
@@ -16,9 +16,11 @@
1616
# specific language governing permissions and limitations
1717
# under the License.
1818

19+
set -e
20+
1921
if [ $# -lt 6 ]; then
20-
echo "Invalid input. Valid usage: ./create-kubernetes-binaries-iso.sh OUTPUT_PATH KUBERNETES_VERSION CNI_VERSION CRICTL_VERSION WEAVENET_NETWORK_YAML_CONFIG DASHBOARD_YAML_CONFIG"
21-
echo "eg: ./create-kubernetes-binaries-iso.sh ./ 1.11.4 0.7.1 1.11.1 https://github.com/weaveworks/weave/releases/download/latest_release/weave-daemonset-k8s-1.11.yaml https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.0/src/deploy/recommended/kubernetes-dashboard.yaml"
22+
echo "Invalid input. Valid usage: ./create-kubernetes-binaries-iso.sh OUTPUT_PATH KUBERNETES_VERSION CNI_VERSION CRICTL_VERSION WEAVENET_NETWORK_YAML_CONFIG DASHBOARD_YAML_CONFIG BUILD_NAME"
23+
echo "eg: ./create-kubernetes-binaries-iso.sh ./ 1.11.4 0.7.1 1.11.1 https://github.com/weaveworks/weave/releases/download/latest_release/weave-daemonset-k8s-1.11.yaml https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.0/src/deploy/recommended/kubernetes-dashboard.yaml setup-v1.11.4.iso"
2224
exit 1
2325
fi
2426

@@ -28,6 +30,8 @@ start_dir="$PWD"
2830
iso_dir="/tmp/iso"
2931
working_dir="${iso_dir}/"
3032
mkdir -p "${working_dir}"
33+
build_name="${7}.iso"
34+
[ -z "${build_name}" ] && build_name="setup-${RELEASE}.iso"
3135

3236
CNI_VERSION="v${3}"
3337
echo "Downloading CNI ${CNI_VERSION}..."
@@ -50,7 +54,7 @@ kubeadm_file_permissions=`stat --format '%a' kubeadm`
5054
chmod +x kubeadm
5155

5256
echo "Downloading kubelet.service ${RELEASE}..."
53-
cd $start_dir
57+
cd "${start_dir}"
5458
kubelet_service_file="${working_dir}/kubelet.service"
5559
touch "${kubelet_service_file}"
5660
curl -sSL "https://raw.githubusercontent.com/kubernetes/kubernetes/${RELEASE}/build/debs/kubelet.service" | sed "s:/usr/bin:/opt/bin:g" > ${kubelet_service_file}
@@ -87,6 +91,14 @@ if [ $? -ne 0 ]; then
8791
fi
8892
mkdir -p "${working_dir}/docker"
8993
output=`${k8s_dir}/kubeadm config images list --kubernetes-version=${RELEASE}`
94+
95+
# Don't forget about the yaml images !
96+
for i in ${network_conf_file} ${dashboard_conf_file}
97+
do
98+
images=`grep "image:" $i | cut -d ':' -f2- | tr -d ' ' | tr -d "'"`
99+
output=`printf "%s\n" ${output} ${images}`
100+
done
101+
90102
while read -r line; do
91103
echo "Downloading docker image $line ---"
92104
sudo docker pull "$line"
@@ -96,11 +108,11 @@ while read -r line; do
96108
done <<< "$output"
97109

98110
echo "Restore kubeadm permissions..."
99-
if [ "${kubeadm_file_permissions}" -eq "" ]; then
111+
if [ -z "${kubeadm_file_permissions}" ]; then
100112
kubeadm_file_permissions=644
101113
fi
102114
chmod ${kubeadm_file_permissions} "${working_dir}/k8s/kubeadm"
103115

104-
mkisofs -o "${output_dir}/setup-${RELEASE}.iso" -J -R -l "${iso_dir}"
116+
mkisofs -o "${output_dir}/${build_name}" -J -R -l "${iso_dir}"
105117

106118
rm -rf "${iso_dir}"

0 commit comments

Comments
 (0)