diff --git a/gestion/gen_confs/autostatus.py b/gestion/gen_confs/autostatus.py
index baf226e9..9c9df3f2 100755
--- a/gestion/gen_confs/autostatus.py
+++ b/gestion/gen_confs/autostatus.py
@@ -94,11 +94,15 @@ class autostatus(gen_config) :
# format [ nom, ip, port(0=ping), description ]
services_exterieurs = {}
- services_exterieurs ['Jussieu'] = [ 'Jussieu', '195.83.118.1', 21, 'Le serveur FTP de Jussieu. (France)' ]
- services_exterieurs ['Free'] = [ 'Free', '213.228.0.141', 21, 'Le serveur FTP de free. (France)' ]
- services_exterieurs ['Voila'] = [ 'Voila', '195.101.94.80', 80, 'Est-ce que Voila fonctionne ? (France)' ]
- services_exterieurs ['Yahoo!'] = [ 'Yahoo!', '66.94.230.39', 80, 'Est-ce que Yahoo! fonctionne ? (USA)' ]
- services_exterieurs ['Altalavista'] = [ 'Altavista', '216.155.200.155', 80, 'Est-ce que Altavista fonctionne ? (USA)' ]
+ services_exterieurs ['Jussieu'] = [ 'Jussieu', '195.83.118.1', 21, 'Le serveur FTP de Jussieu. (France)', 'nobody']
+ services_exterieurs ['Free'] = [ 'Free', '213.228.0.141', 21, 'Le serveur FTP de free. (France)', 'nobody' ]
+ services_exterieurs ['Voila'] = [ 'Voila', '195.101.94.80', 80, 'Est-ce que Voila fonctionne ? (France)', 'nobody' ]
+ services_exterieurs ['Yahoo!'] = [ 'Yahoo!', '66.94.230.39', 80, 'Est-ce que Yahoo! fonctionne ? (USA)', 'nobody' ]
+ services_exterieurs ['Altalavista'] = [ 'Altavista', '216.155.200.155', 80, 'Est-ce que Altavista fonctionne ? (USA)', 'nobody' ]
+
+ # personnes à informer pour l'indiponibilité de certains serveurs
+ contact = {}
+ contact ['pegase.crans.org'] = 'pessoles@crans.org'
# service à redémarer
restart_cmd = ""
@@ -119,6 +123,13 @@ class autostatus(gen_config) :
append = append + " ".join( dico[i] ) + "\n"
return append.encode('iso-8859-15')
+ def mail_contact (self, nom) :
+ # retourne le mail à qui envoyer les avis pour un serveur
+ if nom in self.contact.keys() :
+ return self.contact[nom]
+ else :
+ return 'nobody'
+
def _gen (self) :
# machines crans
@@ -145,12 +156,12 @@ class autostatus(gen_config) :
if m.info() :
# on regarde si c'est une borne de batiment
if ( m.info()[0][0:3] == "Au " ) and ( len(m.info()[0]) == 5 ) :
- bornes[ "1-" + m.info()[0][4]+m.info()[0][3] + "-" + m.nom() ] = [ m.nom().split(".")[0] , m.nom() , 'none' , 'nobody' , m.info()[0] ]
+ bornes[ "1-" + m.info()[0][4]+m.info()[0][3] + "-" + m.nom() ] = [ m.nom().split(".")[0] , m.nom() , 'none' , self.mail_contact(m.nom()) , m.info()[0] ]
else :
- bornes[ "2-" + m.info()[0] + m.nom() ] = [ m.nom().split(".")[0] , m.nom() , 'none' , 'nobody' , m.info()[0] ]
+ bornes[ "2-" + m.info()[0] + m.nom() ] = [ m.nom().split(".")[0] , m.nom() , 'none' , self.mail_contact(m.nom()) , m.info()[0] ]
else :
# on met les bornes non définies à la fin (ordre alphabétique)
- bornes[ "3-" + m.nom() ] = [ m.nom().split(".")[0] , m.nom() , 'none' , 'nobody' , 'Inutilise' ]
+ bornes[ "3-" + m.nom() ] = [ m.nom().split(".")[0] , m.nom() , 'none' , self.mail_contact(m.nom()) , 'Inutilise' ]
# les switchs
elif m.info() and 'switch' in m.info()[0].lower() :
@@ -166,15 +177,15 @@ class autostatus(gen_config) :
index = 'a' + m.nom().split(".")[0]
# on ajoute au dictionnaire
- switchs[ index ] = [ m.nom().split(".")[0] , m.nom() , 'none' , 'nobody' , m.info()[0] ]
+ switchs[ index ] = [ m.nom().split(".")[0] , m.nom() , 'none' , self.mail_contact(m.nom()) , m.info()[0] ]
# la ferme
elif '.ferme.crans.org' in m.nom() :
- nom = m.nom().split(".")[0]
+ nom = ".".join(m.nom().split(".")[0:2])
if m.info() :
- ferme[ nom ] = [ nom , m.nom() , 'none' , 'nobody' , m.info()[0] ]
+ ferme[ nom ] = [ nom , m.nom() , 'none' , self.mail_contact(m.nom()) , m.info()[0] ]
else :
- ferme[ nom ] = [ nom , m.nom() , 'none' , 'nobody' , 'Infos non disponibles' ]
+ ferme[ nom ] = [ nom , m.nom() , 'none' , self.mail_contact(m.nom()) , 'Infos non disponibles' ]
# les serveurs
else :
@@ -183,9 +194,9 @@ class autostatus(gen_config) :
else :
nom = m.nom().split(".")[0]
if m.info() :
- serveurs[ nom ] = [ nom , m.nom() , 'none' , 'nobody' , m.info()[0] ]
+ serveurs[ nom ] = [ nom , m.nom() , 'none' , self.mail_contact(m.nom()) , m.info()[0] ]
else :
- serveurs[ nom ] = [ nom , m.nom() , 'none' , 'nobody' , 'Infos non disponibles' ]
+ serveurs[ nom ] = [ nom , m.nom() , 'none' , self.mail_contact(m.nom()) , 'Infos non disponibles' ]
# route vers l'extérieur
########################
@@ -232,7 +243,7 @@ class autostatus(gen_config) :
# on l'ajoute à la route
if route_to_ext :
route_to_ext += '\n'
- route_to_ext += '%s %s %s nobody@crans.org %s' % (tmp_name, tmp_ip, tmp_depends, tmp_desc)
+ route_to_ext += '%s %s %s %s %s' % (tmp_name, tmp_ip, tmp_depends,self.mail_contact(tmp_name),tmp_desc)
# services extérieurs
#####################
@@ -241,9 +252,9 @@ class autostatus(gen_config) :
for key in self.services_exterieurs.keys() :
s = self.services_exterieurs[key]
if s[2] :
- services_exterieurs[ key ] = [ s[0] + ':' + str(s[2]), s[1] , depends_to_ext, 'nobody' , s[3] ]
+ services_exterieurs[ key ] = [ s[0] + ':' + str(s[2]), s[1] , depends_to_ext, s[4] , s[3] ]
else :
- services_exterieurs[ key ] = [ s[0] , s[1] , depends_to_ext, 'nobody' , s[3] ]
+ services_exterieurs[ key ] = [ s[0] , s[1] , depends_to_ext, s[4] , s[3] ]
# génération du fichier
#######################