#!/bin/bash -e

#
# serviceContainerBackup.sh
#
# Script per il backup del container che eroga il servizio
#

# Importa la definizione delle utilities di interesse generale
source $scriptsForBackupLocation/utilities.sh

# Importa la definizione dei messaggi di log
source $scriptsForBackupLocation/logMessages.sh

#
# Parametri
#
# container:    identificativo Proxmox del container che eroga il
#               servizio
# localServiceBufferPath:
#               path del buffer locale di servizio 
# containerBackupName:
#               nome del file per il backup del container
# logFileName:  nome del file di log
#

# Controlla che il numero dei parametri sia corretto
checkParams $# 4 "$(dateTime) $msgIncorrectParameterNumber \ 
                                         <container> \
                                         <localServiceBufferPath> \
                                         <containerBackupName> \
                                         <logFileName>"

# inizializza le variabili mnemoniche per i parametri          
container=$1
localServiceBufferPath=$2		
containerBackupName=$3
logFileName=$4	

# Traccia l'ingresso nello script
appendToLog "$(dateTime) $msgIntoTheScript" \
            "$localServiceBufferPath/$logFileName"

# seleziona il metodo di compressione adottato per il backup
compressionMethod=lzo					

# Traccia il metodo di compressione adottato
appendToLog "$(dateTime) $msgCompressionMethod $compressionMethod" \
            "$localServiceBufferPath/$logFileName"

# Backup del container
vzdump $container \
    --compress $compressionMethod \
    --stdout 1> $localServiceBufferPath/$containerBackupName \
    2>> "$localServiceBufferPath/$logFileName"

# Traccia l'uscita dallo script
appendToLog "$(dateTime) $msgOutOfTheScript" \
            "$localServiceBufferPath/$logFileName"
exit
