]> git.ipfire.org Git - thirdparty/lxc.git/commitdiff
lxc-oci: add support for WorkingDir 2016/head
authorFelix Abecassis <fabecassis@nvidia.com>
Sat, 9 Dec 2017 01:13:01 +0000 (17:13 -0800)
committerFelix Abecassis <fabecassis@nvidia.com>
Sat, 9 Dec 2017 04:38:43 +0000 (20:38 -0800)
Signed-off-by: Felix Abecassis <fabecassis@nvidia.com>
templates/lxc-oci.in

index 3348745a0b89b2c14b03c466e2ec2acd6d1d6a42..95777e086bc96db955a51d8bd62b7d76634e7791 100755 (executable)
@@ -140,6 +140,21 @@ getuidgid() {
        return
 }
 
+# get cwd from oci image.
+getcwd() {
+       if [ "$#" -eq 0 ]; then
+               echo "/"
+               return
+       fi
+
+       configpath="$1"
+
+       cwd=`cat "${configpath}" | jq -c -r '.config.WorkingDir // "/"'`
+
+       echo "${cwd}"
+       return
+}
+
 usage() {
     cat <<EOF
 LXC container template for OCI images
@@ -319,6 +334,9 @@ uidgid=($(getuidgid ${OCI_CONF_FILE}))
 echo "lxc.init.uid = ${uidgid[0]}" >> "${LXC_CONF_FILE}"
 echo "lxc.init.gid = ${uidgid[1]}" >> "${LXC_CONF_FILE}"
 
+cwd=$(getcwd ${OCI_CONF_FILE})
+echo "lxc.init.cwd = ${cwd}" >> "${LXC_CONF_FILE}"
+
 if [ -n "$LXC_MAPPED_UID" ] && [ "$LXC_MAPPED_UID" != "-1" ]; then
     chown $LXC_MAPPED_UID $LXC_PATH/config $LXC_PATH/fstab >/dev/null 2>&1 || true
 fi