summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@open-infrastructure.net>2020-03-01 17:24:19 +0000
committerDaniel Baumann <daniel.baumann@open-infrastructure.net>2020-03-01 17:24:23 +0000
commit0ef492452af8db1a638b16fdbf6a71130906dd3d (patch)
treee6050a46169cafbadf2f3668e41f8e26a9403692
parentAdding post-start hook to set nvidia device ownership. (diff)
downloadcompute-tools-0ef492452af8db1a638b16fdbf6a71130906dd3d.tar.xz
compute-tools-0ef492452af8db1a638b16fdbf6a71130906dd3d.zip
Harmonizing hooks.
Signed-off-by: Daniel Baumann <daniel.baumann@open-infrastructure.net>
-rwxr-xr-xshare/hooks/post-start.chown-nvidia.sh23
-rwxr-xr-xshare/hooks/pre-start.unlink-console.sh25
2 files changed, 45 insertions, 3 deletions
diff --git a/share/hooks/post-start.chown-nvidia.sh b/share/hooks/post-start.chown-nvidia.sh
index 457b6e5..4dbc247 100755
--- a/share/hooks/post-start.chown-nvidia.sh
+++ b/share/hooks/post-start.chown-nvidia.sh
@@ -1,8 +1,27 @@
#!/bin/sh
+# Copyright (C) 2014-2020 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+#
+# SPDX-License-Identifier: GPL-3.0+
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
set -e
-if grep -qs nvidia /var/lib/machines/"${NAME}"/etc/group
+CONTAINER="/var/lib/machines"
+
+if grep -qs nvidia "${CONTAINER}/${NAME}/etc/group"
then
- chroot "/var/lib/machines/${NAME}" chown root:nvidia "/dev/nvidia*"
+ chroot "${CONTAINER}/${NAME}" chown root:nvidia "/dev/nvidia*"
fi
diff --git a/share/hooks/pre-start.unlink-console.sh b/share/hooks/pre-start.unlink-console.sh
index 762ab0e..566a4de 100755
--- a/share/hooks/pre-start.unlink-console.sh
+++ b/share/hooks/pre-start.unlink-console.sh
@@ -1,8 +1,31 @@
#!/bin/sh
+# Copyright (C) 2014-2020 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+#
+# SPDX-License-Identifier: GPL-3.0+
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
set -e
-if grep -qs 'bind=.*/dev:/dev;' "/etc/open-infrastructure/container/config/${NAME}.conf"
+PROJECT="open-infrastructure"
+PROGRAM="container"
+
+CONFIG="/etc/${PROJECT}/${PROGRAM}/config"
+
+# Run
+if grep -qs 'bind=.*/dev:/dev;' "${CONFIG}/${NAME}.conf"
then
unlink /dev/console > /dev/null 2>&1 || true
fi