init
This commit is contained in:
parent
e5586da25e
commit
e5f10f0374
21
README.md
21
README.md
@ -1,2 +1,19 @@
|
||||
# pmpw
|
||||
Poor Man's Proxmox Watchdog
|
||||
# Poor Man's Proxmox Watchdog
|
||||
|
||||
A bash script working as a helthcheck for a VM.
|
||||
|
||||
Takes in a single argument in form of VMID.
|
||||
|
||||
## Requirements
|
||||
Copy/clone code into your directory
|
||||
|
||||
Add exec permission on watchdog.sh
|
||||
|
||||
`chmod u+x /path/to/watchdog.sh`
|
||||
|
||||
## Examples
|
||||
|
||||
`./watchdog.sh <REPLACE_WITH_VMID>`
|
||||
|
||||
`./watchdog.sh 100`
|
||||
|
||||
|
52
watchdog.sh
Normal file
52
watchdog.sh
Normal file
@ -0,0 +1,52 @@
|
||||
#!/bin/bash
|
||||
|
||||
# check if $1 exists
|
||||
|
||||
if [[ -z $1 ]]
|
||||
then
|
||||
echo "Pass a VMID."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
#------------------------------------------------
|
||||
# CONSTS
|
||||
QMLIST="$(qm list | tail -n +2)"
|
||||
VMID=$1
|
||||
|
||||
#------------------------------------------------
|
||||
# CODE
|
||||
|
||||
# check if container exists
|
||||
if ! echo "$QMLIST" | grep -q " $VMID "
|
||||
then
|
||||
printf "\nNo such VM!\n"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
VMSTATE=$(echo "$QMLIST" | grep " $VMID " | awk '{print $3}')
|
||||
|
||||
case $VMSTATE in
|
||||
|
||||
"running")
|
||||
printf "VM %s" "$VMID" "allready running."
|
||||
echo ""
|
||||
exit 0
|
||||
;;
|
||||
|
||||
"stopped")
|
||||
printf "Starting VM %s" "$VMID""."
|
||||
echo "" # To lazy to fix output spacing
|
||||
qm start "$VMID"
|
||||
exit 0
|
||||
|
||||
;;
|
||||
|
||||
*)
|
||||
printf "\nUnknown state\n"
|
||||
exit 1
|
||||
;;
|
||||
|
||||
esac
|
||||
|
||||
# If you have gotify or something simmilar you can paste it under "running")
|
||||
# and under "stopped") for notifications.
|
Loading…
x
Reference in New Issue
Block a user