summaryrefslogtreecommitdiff
path: root/testing/docker/common-scripts/su-as-user
diff options
context:
space:
mode:
Diffstat (limited to 'testing/docker/common-scripts/su-as-user')
-rwxr-xr-xtesting/docker/common-scripts/su-as-user15
1 files changed, 15 insertions, 0 deletions
diff --git a/testing/docker/common-scripts/su-as-user b/testing/docker/common-scripts/su-as-user
new file mode 100755
index 0000000..7f262ac
--- /dev/null
+++ b/testing/docker/common-scripts/su-as-user
@@ -0,0 +1,15 @@
+#!/bin/bash
+
+usr=$1
+uid=$2
+grp=$3
+gid=$4
+shift 4
+
+groupadd -g ${gid} ${grp}
+useradd -d /home/${usr} -m -g ${gid} -u ${uid} ${usr}
+if [ -z "$*" ]; then
+ exec su -l ${usr}
+else
+ exec su -l -c "/bin/bash -c '$*'"
+fi