#!/bin/bash
##################
#
# Author: Gerrit Lazer
# Version: 0.1
#
#################

WARNING=0
VERBOSE=0

CTIDS=$(vzlist -a -H1 | awk '{print $1}')
CTIDarray=($CTIDS)

YESTERDAY=$(date +'%Y-%m-%d %H:%M:%S' -d "yesterday")

OIFS="$IFS"
IFS=$'\n'

while getopts :v option
do
	case "${option}"
	in
		v) VERBOSE=1;;
		?) echo -e "Usage: \n -v verbose\nExample: $0 -v" && exit 0;;
	esac
done

if [[ ! -e /usr/sbin/vzctl ]]; then
	echo "vzctl not available"
	exit 1
fi

for ct in ${CTIDarray[@]}
do
	for snapshots in $(vzctl snapshot-list $ct -H -o date 2>/dev/null)
	do
		for i in $snapshots
		do
			if [[ $i < $YESTERDAY ]]; then
				if [[ $VERBOSE == 1 ]]; then
					echo "$ct - $i"
				fi
				((WARNING+=1))
			fi
		done
	done
done

if [[ $WARNING > 0 ]]; then
	echo "A snapshot older than 24 Hours exists ($WARNING)" 
	exit 2
else
	echo "No snapshot older than 24 hours"
	exit 0
fi

