Commit a190d56b authored by U-PALLAS\theron's avatar U-PALLAS\theron
Browse files

menage dans le repertoire

parent 1b947b5e
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
#!/bin/sh
# modif ###
# *************** VARIABLES *********************
# path des commandes curl POST et GET
path_curl="."
# path_curl="/home/theron"
# path_curl="/home/atheron/VITAM" (path sur pctadad admin)
# path des SIP (répertoire contenant les SIP)
path_sip="$1"
# url des API Vitam:
url="https://10.6.10.34:"
#url="https://prep-vit-acc-1-1.cines.fr:"
# url="https://vitam.cines.fr:"
# ports des API
ing_ext_port="8443";
admin_ext_port="8444";
#Fichier pem du certificat:
certificat=`cat ./cert/cines_certificat.pem`
# certificat=`cat ./cert/cines_certificat.prod.pem`
# certificat=`cat uga_certificat.pem`
# *************** VARIABLES *********************
# *************** FONCTIONS *********************
recup_statut () {
report="STATUT";j=0;flagSt=0;etat="COMPLETED"
# Initialisation du fichier de sortie:
echo "Recuperation des statuts des VERSEMENTS pour $1" > ./out/$1-$report.out;
# Lecture du fichier des XrequestId des POSTS initiaux:
exec 0<./out/$1-POST.out
read ligne # lecture de la premiere ligne du fichier (entete)
while read ligne # lecture des X-requestId
do
# Recuperation des valeurs de XrequesId et nom du sip:
reqId=`echo $ligne | awk {'print $3'}`;
sip=`echo $ligne | awk {'print $2'}`;
dateVers=`echo $ligne | awk {'print $1'}`;
# Recuperation du statut correspondant:
echo -e "\n\n######### Recuperation du statut de $sip, RequestId = $reqId #########"
statut=`$path_curl/curl_GET_statut.sh $certificat $url$admin_ext_port $reqId | grep "X-Global-Execution-State" | awk '{print $2}'`
echo "Statut de la requete POST pour $sip ($reqId): $statut";
# Ecriture dans le fichier de sortie des statuts (pour le dossier des SIP)
echo "$dateVers $sip $reqId $statut" >> ./out/$1-$report.out;
done
}
recup_etat () {
report="ETAT";j=0;flagSt=0;
# Initialisation du fichier de sortie:
echo "Recuperation des etats finaux des VERSEMENTS pour $1" > ./out/$1-$report.out;
# Lecture du fichier des statuts des POSTS:
# exec 0<./out/$1-STATUT.out
exec 0<./out/$1-POST.out
read ligne # lecture de la premiere ligne du fichier (entete)
while read ligne
do
# Recuperation des valeurs de XrequesId,nom du sip,date versement, statut du post:
reqId=`echo $ligne | awk {'print $3'}`;
sip=`echo $ligne | awk {'print $2'}`;
dateVers=`echo $ligne | awk {'print $1'}`;
#statutPost=`echo $ligne | awk {'print $4'}`;
# Recuperation de l'etat finale dans l'archiveTransferReply correspondant:
echo "$statutPost"; echo $etat;
echo -e "\n\n######### Recuperation de l'état final de $sip, RequestId = $reqId #########"
$path_curl/curl_GET.sh $certificat $url$ing_ext_port $reqId archivetransferreply > ./out/$1-$sip-$report.xml 2>/dev/null
ligne1=`cat ./out/$1-$sip-$report.xml | head -1` # recuperation de la ligne1 qui contient le code HTTP du GET
if echo $ligne1 | grep "OK" 1>/dev/null 2>&1 # Si le retour du GET contient OK
then
echo "L'accuse de reception a bien été trouvé par le GET"
# Parsing du content de <ReplyCode> dans l'accuse de reception:
AR=`cat ./out/$1-$sip-$report.xml`
motif="<ReplyCode>"; motif2="</ReplyCode>"
etatFinal=${AR#*${motif}}
etatFinal=${etatFinal%${motif2}*}
echo "Resultat final du dépot : $etatFinal ";
else
etatFinal="ATR non Trouve"
fi
# echo -e "\n\n######### Recuperation de l'état final de $sip, RequestId = $reqId #########"
# $path_curl/curl_GET.sh $certificat $url$ing_ext_port $reqId archivetransferreply > ./out/$1-$sip-$report.xml 2>/dev/null
# ligne1=`cat ./out/$1-$sip-$report.xml | head -1` # recuperation de la ligne1 qui contient le code HTTP du GET
#
# if echo $ligne1 | grep "OK" 1>/dev/null 2>&1 # Si le retour du GET contient OK
# then
# echo "L'accuse de reception a bien été trouvé par le GET"
# fi
# Parsing du content de <ReplyCode> dans l'accuse de reception:
# AR=`cat ./out/$1-$sip-$report.xml`
# motif="<ReplyCode>"; motif2="</ReplyCode>"
# replyCode=${AR#*${motif}}
# replyCode=${replyCode%${motif2}*}
# echo "Resultat final du dépot : ReplyCode = $replyCode ";
# Ecriture dans le fichier de sortie des statuts finaux (pour le dossier des SIP)
echo "$dateVers $sip $reqId $statutPost $etatFinal" >> ./out/$1-$report.out;
done
}
post_sip () {
report="POST";
# Lancement des POST (versement des SIP de la directory $path_sip)
ls $1 > fichier_liste_sip.txt
nbrSip=`cat fichier_liste_sip.txt | wc -l`
# Boucle de lecture , lancement des POST, enregistrement des Request-id des POST
exec 0<fichier_liste_sip.txt
tot=0;
z=1;
echo "`date +%Y/%m/%d-%H:%M:%S`: Versement des SIP de $path_sip dans VITAM ..." > ./out/$path_sip-$report.out
while read sip
do
echo "`date +%Y/%m/%d-%H:%M:%S`: Versement du SIP $path_sip/$sip dans VITAM ..."
$path_curl/curl_POST.sh $certificat $path_sip $sip $url$ing_ext_port
## Recuperation du X-request-Id dans la sortie du POST
reqId=`grep X-Request-Id POST-$sip.out | awk {'print $2'}`
echo "`date +%Y/%m/%d-%H:%M:%S` $sip $reqId" >> ./out/$path_sip-$report.out
mv POST-$sip.out ./out # deplacement du fichier out dans .out
done
}
# *************** FONCTIONS *********************
# **************** MAIN() ************************
## POST: Lecture du repertoire et construction fichier liste des SIP
## Lecture fichier de liste des SIP
## Boucle : pour chaque ligne:
## lancement du POST par curl_POST.sh
## Récupération du X-request-id > fichier liste des X-request-ID
## STATUT:
## Lecture du fichier de la liste des X-request-ID des POSTS
## Boucle: pour chaque ligne: recuperation du statut de chaque POST > fichier des statut des POSTS
## ETAT:
## Lecture du fichier de la liste des statut des POSTS
## Boucle: pour chaque ligne: recuperation de l'ATR et parse de <replyCOde> > fichier ETAT final
## Fin
case $2 in
POST) post_sip $path_sip;;
STATUT) recup_statut $path_sip;;
ETAT) recup_etat $path_sip;;
*) echo "Parametre de traitement incorrect: attendu: POST,STATUT,ETAT"
esac
exit;
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment