#!/bin/bash -e

# 
# serviceBackupSaving.sh
#
# Script per il salvataggio del backup del container/vm, di quello
# dell'area dati di servizio, se prevista, e del relativo file di log,
# contenuti, nel buffer locale di servizio, nella directory remota di
# backup
#

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

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

#
# Parametri
#
# remoteServiceDirCredentials:
#               credenziali di accesso alla directory remota di servizio
# remoteServiceDirPath:
#               path della directory remota di servizio
# remoteBackupDirName:
#               nome della directory remota di backup
# localServiceBufferPath:
#               path del buffer locale di servizio 
# logFileName:  nome del file di log

# Controlla che il numero dei parametri sia corretto
checkParams $# 5 "$(dateTime) $msgIncorrectParameterNumber \
                                        <remoteServiceDirCredentials> \
                                        <remoteServiceDirPath> \
                                        <remoteBackupDirName> \
                                        <localServiceBufferPath> \
                                        <logFileName>"                      
                                        
# inizializza le variabili mnemoniche per i parametri
remoteServiceDirCredentials=$1            
remoteServiceDirPath=$2
remoteBackupDirName=$3
localServiceBufferPath=$4
logFileName=$5

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

# Salva il backup del container/vm, dell'area dati di servizio, se presente
# e del file di log nella cartella remota di backup
scp -q $localServiceBufferPath/*.* \
 $remoteServiceDirCredentials:$remoteServiceDirPath/$remoteBackupDirName

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