summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSwapnil Kulkarni <me@coolsvap.net>2015-07-13 07:11:27 +0000
committerSwapnil Kulkarni <me@coolsvap.net>2015-07-14 09:38:49 +0000
commit1f0acbd0cd47c4872fd57189181e06dc2bd7891b (patch)
treede5fe44978482eda85568c3b67688c9211784187
parent69338a94ba0969241a8b669eba824956912d71c4 (diff)
downloadkolla-1f0acbd0cd47c4872fd57189181e06dc2bd7891b.tar.gz
kolla-1f0acbd0cd47c4872fd57189181e06dc2bd7891b.zip
Update scripts to check if docker is usable for $USER
Added new script for checking user permissions on docker command execution Change-Id: I3b727590d9a29f416f5b847912b7250c555c2333 Closes-Bug: #1473554
-rwxr-xr-xtools/build-docker-image7
-rwxr-xr-xtools/cleanup-containers2
-rwxr-xr-xtools/cleanup-images6
-rwxr-xr-xtools/kolla2
-rwxr-xr-xtools/validate-docker-execute14
5 files changed, 26 insertions, 5 deletions
diff --git a/tools/build-docker-image b/tools/build-docker-image
index 7ab382333..f7c7995e1 100755
--- a/tools/build-docker-image
+++ b/tools/build-docker-image
@@ -1,13 +1,10 @@
#!/bin/bash
-if [[ $EUID -eq 0 ]]; then
- echo "This script must not be run as root. Instead add yourself to the docker group." 1>&2
- exit 1
-fi
-
TOPDIR=$(git rev-parse --show-toplevel)
IMGDIR="$(cd "$(dirname "$0")" && pwd)"
+. $TOPDIR/tools/validate-docker-execute
+
RELEASE_NAMESPACE=kollaglue
NAMESPACE=kollaglue
PREFIX=centos-rdo-
diff --git a/tools/cleanup-containers b/tools/cleanup-containers
index efdd84376..4812f5744 100755
--- a/tools/cleanup-containers
+++ b/tools/cleanup-containers
@@ -4,6 +4,8 @@
REAL_PATH=$(python -c "import os,sys;print os.path.realpath('$0')")
cd "$(dirname "$REAL_PATH")/.."
+. tools/validate-docker-execute
+
# Remove docker containers
docker ps -a -q | while read -r line ; do
echo "Removing docker containers"
diff --git a/tools/cleanup-images b/tools/cleanup-images
index df88e033a..c0b1db55c 100755
--- a/tools/cleanup-images
+++ b/tools/cleanup-images
@@ -1,3 +1,9 @@
#!/bin/bash
+# Move to top level directory
+REAL_PATH=$(python -c "import os,sys;print os.path.realpath('$0')")
+cd "$(dirname "$REAL_PATH")/.."
+
+. tools/validate-docker-execute
+
docker rmi $@ $(docker images -a -q)
diff --git a/tools/kolla b/tools/kolla
index ff05d108a..3f99c4b43 100755
--- a/tools/kolla
+++ b/tools/kolla
@@ -6,6 +6,8 @@
REAL_PATH=$(python -c "import os,sys;print os.path.realpath('$0')")
cd "$(dirname "$REAL_PATH")/.."
+. tools/validate-docker-execute
+
NETWORK_MANAGER=$(grep -sri NETWORK_MANAGER ./compose/openstack.env | cut -f2 -d'=')
if [[ -z "$NETWORK_MANAGER" ]]; then
echo 'No network manager defined in ./compose/openstack.env, defaulting to "neutron".'
diff --git a/tools/validate-docker-execute b/tools/validate-docker-execute
new file mode 100755
index 000000000..3dda59e86
--- /dev/null
+++ b/tools/validate-docker-execute
@@ -0,0 +1,14 @@
+#!/bin/bash
+#
+# This script can be used to check user privilege to execute
+# docker commands
+
+function check_dockerexecute {
+ docker ps &>/dev/null
+ return_val=$?
+ if [ $return_val -ne 0 ]; then
+ echo "User $USER can't seem to run Docker commands. Verify product documentation to allow user to execute docker commands" 1>&2
+ exit 1
+ fi
+}
+check_dockerexecute