summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--packer/provision/baseline.sh12
1 files changed, 10 insertions, 2 deletions
diff --git a/packer/provision/baseline.sh b/packer/provision/baseline.sh
index aaf1fa100..82edb3fe7 100644
--- a/packer/provision/baseline.sh
+++ b/packer/provision/baseline.sh
@@ -122,7 +122,10 @@ EOF
i=0
tput sc
-while [ fuser /var/lib/dpkg/lock >/dev/null 2>&1 || fuser /var/lib/apt/lists/lock >/dev/null 2>&1 ]; do
+LOCKFILES="/var/lib/dpkg/lock /var/lib/apt/lists/lock"
+WASLOCKED=0
+while [ fuser ${LOCKFILES} >/dev/null 2>&1 ]; do
+ WASLOCKED=$?
case $(($i % 4)) in
0 ) j="-" ;;
1 ) j="\\" ;;
@@ -135,7 +138,12 @@ while [ fuser /var/lib/dpkg/lock >/dev/null 2>&1 || fuser /var/lib/apt/lists/loc
((i=i+1))
done
-/usr/bin/apt-get "$@"
+if [ $WASLOCKED==0 ]
+then
+ /usr/bin/apt-get "$@"
+else
+ exec /usr/local/bin/apt-get "$@"
+fi
EOF
chmod +x /usr/local/bin/apt-get