summaryrefslogtreecommitdiffstats
path: root/PCBSD/pc-sysinstall/backend/.svn/text-base/functions-runcommands.sh.svn-base
diff options
context:
space:
mode:
Diffstat (limited to 'PCBSD/pc-sysinstall/backend/.svn/text-base/functions-runcommands.sh.svn-base')
-rw-r--r--PCBSD/pc-sysinstall/backend/.svn/text-base/functions-runcommands.sh.svn-base76
1 files changed, 76 insertions, 0 deletions
diff --git a/PCBSD/pc-sysinstall/backend/.svn/text-base/functions-runcommands.sh.svn-base b/PCBSD/pc-sysinstall/backend/.svn/text-base/functions-runcommands.sh.svn-base
new file mode 100644
index 0000000..307119d
--- /dev/null
+++ b/PCBSD/pc-sysinstall/backend/.svn/text-base/functions-runcommands.sh.svn-base
@@ -0,0 +1,76 @@
+#!/bin/sh
+# Functions which runs commands on the system
+
+. ${BACKEND}/functions.sh
+. ${BACKEND}/functions-parse.sh
+
+run_chroot_cmd()
+{
+ CMD="$@"
+ echo_log "Running chroot command: ${CMD}"
+ echo "$CMD" >${FSMNT}/.runcmd.sh
+ chmod 755 ${FSMNT}/.runcmd.sh
+ chroot ${FSMNT} sh /.runcmd.sh
+ rm ${FSMNT}/.runcmd.sh
+};
+
+run_chroot_script()
+{
+ SCRIPT="$@"
+ SBASE=`basename $SCRIPT`
+
+ cp ${SCRIPT} ${FSMNT}/.$SBASE
+ chmod 755 ${FSMNT}/.${SBASE}
+
+ echo_log "Running chroot script: ${SCRIPT}"
+ chroot ${FSMNT} /.${SBASE}
+
+ rm ${FSMNT}/.${SBASE}
+};
+
+
+run_ext_cmd()
+{
+ CMD="$@"
+ # Make sure to export FSMNT, in case cmd needs it
+ export FSMNT
+ echo_log "Running external command: ${CMD}"
+ echo "${CMD}"> ${TMPDIR}/.runcmd.sh
+ chmod 755 ${TMPDIR}/.runcmd.sh
+ sh ${TMPDIR}/.runcmd.sh
+ rm ${TMPDIR}/.runcmd.sh
+};
+
+
+# Starts the user setup
+run_commands()
+{
+ while read line
+ do
+ # Check if we need to run any chroot command
+ echo $line | grep ^runCommand= >/dev/null 2>/dev/null
+ if [ "$?" = "0" ]
+ then
+ get_value_from_string "$line"
+ run_chroot_cmd "$VAL"
+ fi
+
+ # Check if we need to run any chroot script
+ echo $line | grep ^runScript= >/dev/null 2>/dev/null
+ if [ "$?" = "0" ]
+ then
+ get_value_from_string "$line"
+ run_chroot_script "$VAL"
+ fi
+
+ # Check if we need to run any chroot command
+ echo $line | grep ^runExtCommand= >/dev/null 2>/dev/null
+ if [ "$?" = "0" ]
+ then
+ get_value_from_string "$line"
+ run_ext_cmd "$VAL"
+ fi
+
+ done <${CFGF}
+
+};
OpenPOWER on IntegriCloud