prio for startup and new overview to sort vms

This commit is contained in:
nativemad
2018-10-23 17:40:54 +02:00
parent ed5d37572e
commit f10d0e51bb
5 changed files with 88 additions and 20 deletions
+13 -7
View File
@@ -81,7 +81,8 @@ function createdb {
brdev3 VARCHAR(50),
vncport INTEGER,
websocket INTEGER,
vncpassword VARCHAR(50)
vncpassword VARCHAR(50),
prio INTEGER
);"
sqlite3 $SQLITEFILE "CREATE TABLE users (
id INTEGER PRIMARY KEY AUTOINCREMENT,
@@ -147,8 +148,9 @@ function vmstart {
sqlite3 $SQLITEFILE "SELECT * FROM vms LEFT JOIN servers on vms.server = servers.hostname WHERE vms.id=$1" | while read line; do
IFS='|' read -r -a array <<< "$line"
#prepare tmpfile
TMPF=/home/nlvmi/start${array[1]}.tmp
rm $TMPF &>/dev/null
TMPF=/home/nlvmi/start${array[32]}-${array[1]}.tmp
rm /home/nlvmi/start*-${array[1]}.tmp &>/dev/null
touch $TMPF && chmod 660 $TMPF
#add user if necessary
echo "if ! \`id -u ${array[2]} &>/dev/null\`; then useradd ${array[2]} -d /run/nlvmi -g nlvmi -M -s /bin/false -G kvm; fi" >>$TMPF
#chown mon and pid files
@@ -183,14 +185,18 @@ function vmstart {
echo "${COMMAND[@]}" >>$TMPF
#Set VNC Password
echo "echo \"change vnc password ${array[31]}\" | socat - unix-connect:$RUNDIRECTORY/${array[1]}.mon >/dev/null" >>$TMPF
if [ ! -z "${array[34]}" ]; then
if [ ! -z "${array[35]}" ]; then
echo "chmod g+w $RUNDIRECTORY/${array[1]}.mon" >>$TMPF
echo "chmod g+r $RUNDIRECTORY/${array[1]}.pid" >>$TMPF
openssl dgst -sha512 -sign "/etc/nlvmi/nlvmi_priv.key" -out /home/nlvmi/${array[1]}.tmp.sha512 $TMPF
su nlvmi -c "scp $TMPF* ${array[34]}:/home/nlvmi/"
su nlvmi -c "ssh ${array[34]} \"/usr/bin/nlvmi remote $TMPF run\""
TMPFR="/home/nlvmi/rstart{array[32]}-${array[1]}.tmp"
mv $TMPF $TMPFR
su nlvmi -c "ssh ${array[35]} \"rm /home/nlvmi/start*-${array[1]}.tmp\""
mv $TMPFR $TMPF
su nlvmi -c "scp $TMPF* ${array[35]}:/home/nlvmi/"
su nlvmi -c "ssh ${array[35]} \"/usr/bin/nlvmi remote $TMPF run\""
if [ ${array[12]} == "0" ]; then
su nlvmi -c "ssh ${array[34]} \"rm $TMPF $TMPF.sha512\""
su nlvmi -c "ssh ${array[35]} \"rm $TMPF $TMPF.sha512\""
fi
rm $TMPF $TMPF.sha512
else