From: Vincent Le Gallic Date: Tue, 22 Jul 2014 23:53:43 +0000 (+0200) Subject: [update_myconfig] Connexion master through komaz + ajout de vieux X-Git-Url: http://gitweb.pimeys.fr/?a=commitdiff_plain;h=fb09be91935e043554fa65bd1630b4545de6d881;p=scripts-20-100.git [update_myconfig] Connexion master through komaz + ajout de vieux Permet de contourner la limite de ssh/minute --- diff --git a/update_myconfig.sh b/update_myconfig.sh index 67436e8..92fe1e5 100755 --- a/update_myconfig.sh +++ b/update_myconfig.sh @@ -4,13 +4,29 @@ # sur toutes les machines où j'ai accès color='' +green='' endcolor='' +# Pour l'exécuter à la maison if [ "$1" = "--local" ] then localmode=".local" fi +# Déclaration des machines, dont celles qui dépendent du localmode +machines_behind_komaz="cerebro bde bde2 bde3 videobde baldrick zamok rezosup acoeur vieux" +other_machines="info22 pimeys quigon hexagon soyouz gladys${localmode} cabal${localmode}" + +# On accèdera aux machines derrière komaz via un seul proxy avec une connexion master +crans_proxy="zamok" +# Chemin de la socket pour la connexion master +socket=$(mktemp -u) + +if [[ "`hostname`" != "eva" ]]; +then + echo "${green}Normalement, à exécuter sur eva !${endcolor}" +fi + echo "Les machines de Serenity sont en dernier (.local issue)" echo "${color}Ne peut pas mettre à jour (ForwardAgent=no) :${endcolor} tahines, rasputin" @@ -20,7 +36,20 @@ echo "${color}sur eva:${endcolor} (localement)" cd ~/.myconfig git pull -for i in cerebro info22 bde bde2 bde3 videobde pimeys baldrick quigon hexagon zamok soyouz rezosup acoeur gladys${localmode} cabal${localmode} +# Ouverture de la connexion master vers la zone Cr@ns +ssh ${crans_proxy} -o ControlMaster=yes -o ControlPath=${socket} -o ControlPersist=yes -n &> /dev/null + +for i in ${machines_behind_komaz} +do + echo "${color}sur $i:${endcolor}" + ssh $i -o ProxyCommand="ssh ${crans_proxy} -o ControlMaster=no -o ControlPath=${socket} -W %h:%p" 'cd .myconfig; git pull' +done + +# Fermeture de la connexion master +ssh ${crans_proxy} -o ControlMaster=no -o ControlPath=${socket} -O exit + + +for i in ${other_machines} do echo "${color}sur $i:${endcolor}" ssh $i 'cd .myconfig; git pull'