summaryrefslogtreecommitdiffstats
path: root/tools/kubernetes/k8s-cluster.sh
diff options
context:
space:
mode:
authorBryan Sullivan <bryan.sullivan@att.com>2017-12-14 21:36:55 -0800
committerBryan Sullivan <bryan.sullivan@att.com>2017-12-14 21:36:55 -0800
commitbd3c52aa5273e39edfa177d226d76b94c882ed0a (patch)
tree3dfeec9c8c5b9f28174803f9c63da3af57fd995e /tools/kubernetes/k8s-cluster.sh
parent6ebfb9bd88513d0e240615eb08f538d76982a295 (diff)
Fix various issues in single-node testing
JIRA: MODELS-2 Change-Id: I8ee88b7954a34f2731c9d4b6d9a37d1981d91731 Signed-off-by: Bryan Sullivan <bryan.sullivan@att.com>
Diffstat (limited to 'tools/kubernetes/k8s-cluster.sh')
-rw-r--r--tools/kubernetes/k8s-cluster.sh14
1 files changed, 11 insertions, 3 deletions
diff --git a/tools/kubernetes/k8s-cluster.sh b/tools/kubernetes/k8s-cluster.sh
index cac35e3..46750d0 100644
--- a/tools/kubernetes/k8s-cluster.sh
+++ b/tools/kubernetes/k8s-cluster.sh
@@ -63,6 +63,13 @@ function setup_prereqs() {
cat <<'EOG' >~/prereqs.sh
#!/bin/bash
# Basic server pre-reqs
+function wait_dpkg() {
+ # TODO: workaround for "E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable)"
+ echo; echo "waiting for dpkg to be unlocked"
+ while sudo fuser /var/{lib/{dpkg,apt/lists},cache/apt/archives}/lock >/dev/null 2>&1; do
+ sleep 1
+ done
+}
dist=$(grep --m 1 ID /etc/os-release | awk -F '=' '{print $2}' | sed 's/"//g')
if [[ $(grep -c $HOSTNAME /etc/hosts) -eq 0 ]]; then
echo; echo "prereqs.sh: ($(date)) Add $HOSTNAME to /etc/hosts"
@@ -73,10 +80,11 @@ fi
if [[ "$dist" == "ubuntu" ]]; then
# Per https://kubernetes.io/docs/setup/independent/install-kubeadm/
echo; echo "prereqs.sh: ($(date)) Basic prerequisites"
- sudo apt-get update
- sudo apt-get upgrade -y
+
+ wait_dpkg; sudo apt-get update
+ wait_dpkg; sudo apt-get upgrade -y
echo; echo "prereqs.sh: ($(date)) Install latest docker"
- sudo apt-get install -y docker.io
+ wait_dpkg; sudo apt-get install -y docker.io
# Alternate for 1.12.6
#sudo apt-get install -y libltdl7
#wget https://packages.docker.com/1.12/apt/repo/pool/main/d/docker-engine/docker-engine_1.12.6~cs8-0~ubuntu-xenial_amd64.deb