#!/bin/bash -e

#
# containerBackup.sh
#
# Effettua il backup del container che eroga il servizio
#

#
# Parametri
#
# caller:		nome dello script chiamante
# container:    identificativo del container che eroga il servizio
# containerBackupPath:
#               path del file per il backup del container
# logFilePath:  path del file di log per il backup
#

########################################################################
#
# Predispone l'ambiente di esecuzione
#

#
# Attenzione!!!!
#    la variabile pmxBackupRestorePath e' valorizzata all'interno
#    del file /etc/profile
#

# Importa la definizione delle costanti simboliche
source $pmxBackupRestorePath/scripts/symbolicConstantsSetup.sh

# Importa la definizione delle utilities
source $UTILITIES

# Importa la definizione dei messaggi di log
source $LOG_MESSAGES
#
########################################################################

# Controlla che il numero dei parametri sia corretto
checkParams $# 4 "$(dateTime) $msgIncorrectParameterNumber \
                              <caller> \ 
                              <container> \
                              <containerBackupPath> \
                              <logFilePath>"

# Inizializza le variabili mnemoniche per i parametri          
caller=$1
container=$2	
containerBackupPath=$3
logFilePath=$4

# Traccia l'ingresso nello script
appendToLog "$(dateTime) $msgIntoTheScript" \
            "$logFilePath"
            
# Traccia il chiamante lo script
appendToLog "$(dateTime) $msgScriptCaller $caller" \
            "$logFilePath"

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

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

# Backup del container
bash -c "vzdump $container \
   --compress $compressionMethod \
   --stdout 1> $containerBackupPath \
   2>> $logFilePath"
  
# Traccia l'uscita dallo script
appendToLog "$(dateTime) $msgOutOfTheScript" \
            "$logFilePath"
exit
