]> gitweb.pimeys.fr Git - scripts-20-100.git/blob - update_myconfig.sh
typo
[scripts-20-100.git] / update_myconfig.sh
1 #!/bin/bash
2
3 # Pour mettre à jour les fichiers de configuration personnelle
4 # sur toutes les machines où j'ai accès
5
6 color='\e[0;31m'
7 green='\e[0;32m'
8 endcolor='\e[0m'
9
10 # Pour l'exécuter à la maison
11 if [ "$1" = "--local" ]
12 then
13 localmode=".local"
14 fi
15
16 # Déclaration des machines, dont celles qui dépendent du localmode
17 machines_behind_komaz="cerebro bde-test bde3 bde2-virt zamok rezosup"
18 other_machines="19.dptinfo pimeys oswaft soyouz gladys${localmode} cabal${localmode}"
19
20 # On accèdera aux machines derrière komaz via un seul proxy avec une connexion master
21 crans_proxy="zamok"
22 # Chemin de la socket pour la connexion master
23 socket=$(mktemp -u)
24
25 if [[ "`hostname`" != "eva" ]];
26 then
27 echo "${green}Normalement, à exécuter sur eva !${endcolor}"
28 fi
29
30 echo "Les machines de Serenity sont en dernier (.local issue)"
31
32 # locally
33 echo "${color}sur eva:${endcolor} (localement)"
34 cd ~/.myconfig
35 git pull
36
37 # Ouverture de la connexion master vers la zone Cr@ns
38 ssh ${crans_proxy} -o ControlMaster=yes -o ControlPath=${socket} -o ControlPersist=yes -n &> /dev/null
39
40 for i in ${machines_behind_komaz}
41 do
42 echo "${color}sur $i:${endcolor}"
43 ssh $i -o ProxyCommand="ssh ${crans_proxy} -o ControlMaster=no -o ControlPath=${socket} -W %h:%p" 'cd .myconfig; git pull'
44 done
45
46 # Fermeture de la connexion master
47 ssh ${crans_proxy} -o ControlMaster=no -o ControlPath=${socket} -O exit
48
49
50 for i in ${other_machines}
51 do
52 echo "${color}sur $i:${endcolor}"
53 ssh $i 'cd .myconfig; git pull'
54 done
55
56 # Warning à la fin
57 echo "${color}Ne peut pas mettre à jour (ForwardAgent=no) :${endcolor} tahines"