From ab46fe7f55ccc4c90e8d6baa77cec353b508007f Mon Sep 17 00:00:00 2001 From: TechHome Date: Thu, 12 Mar 2020 09:59:01 +0100 Subject: [PATCH] Create shutdownlxc.sh --- api/lxc/shutdownlxc.sh | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 api/lxc/shutdownlxc.sh diff --git a/api/lxc/shutdownlxc.sh b/api/lxc/shutdownlxc.sh new file mode 100644 index 0000000..76f9f04 --- /dev/null +++ b/api/lxc/shutdownlxc.sh @@ -0,0 +1,30 @@ +#!/bin/bash +# Date 12.03.2020 +# Author TechHome + +PROX_USERNAME=root@pam +PROX_PASSWORD=mypassword +HOST=myproxmoxhost + +NODE=mynode +TARGET_VMID=myvmid + +decodeDataFromJson(){ + echo `echo $1 \ + | sed 's/{\"data\"\:{//g' \ + | sed 's/\\\\\//\//g' \ + | sed 's/[{}]//g' \ + | awk -v k="text" '{n=split($0,a,","); for (i=1; i<=n; i++) print a[i]}' \ + | sed 's/\"\:\"/\|/g' \ + | sed 's/[\,]/ /g' \ + | sed 's/\"// g' \ + | grep -w $2 \ + | awk -F "|" '{print $2}'` +} + +DATA=`curl -s -k -d "username=$PROX_USERNAME&password=$PROX_PASSWORD" $HOST/api2/json/access/ticket` +TICKET=$(decodeDataFromJson $DATA 'ticket') +CSRF=$(decodeDataFromJson $DATA 'CSRFPreventionToken') + +START_TASK_DATA=`curl -s -k -b "PVEAuthCookie=$TICKET" -H "CSRFPreventionToken: $CSRF" -X POST $HOST/api2/json/nodes/$NODE/lxc/$TARGET_VMID/status/shutdown` +START_TASK_RESULT=$(decodeDataFromJson $START_TASK_DATA 'data')a