summaryrefslogtreecommitdiffstats
path: root/fuel/build/docker/runcontext
diff options
context:
space:
mode:
Diffstat (limited to 'fuel/build/docker/runcontext')
-rwxr-xr-xfuel/build/docker/runcontext35
1 files changed, 35 insertions, 0 deletions
diff --git a/fuel/build/docker/runcontext b/fuel/build/docker/runcontext
new file mode 100755
index 000000000..52b46ad14
--- /dev/null
+++ b/fuel/build/docker/runcontext
@@ -0,0 +1,35 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Ericsson AB and others.
+# stefan.k.berg@ericsson.com
+# jonas.bjurel@ericsson.com
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+#
+context=$1
+shift
+GID=`id -g`
+USER=`whoami`
+res=`docker build -q --rm - <<EOF
+FROM $context
+RUN date || date
+RUN /root/setcontext $USER $UID $GID $HOME
+EOF`
+GITROOT=`git rev-parse --show-toplevel`
+CID=`echo $res | sed 's/.* //'`
+
+ RUN_CONTEXT_OPT="--privileged=true --rm -i -e HOME=$HOME -u $USER -w $PWD -v ${HOME}/.ssh:${HOME}/.ssh -v $GITROOT:$GITROOT"
+
+if [ "${INTERACTIVE}" != "FALSE" ]; then
+ RUN_CONTEXT_OPT+=" -t"
+fi
+
+echo command: docker run ${RUN_CONTEXT_OPT} $CID "$@"
+docker run ${RUN_CONTEXT_OPT} $CID "$@"
+
+rc=$?
+docker rmi -f $CID > /dev/null
+exit $rc