[switchs.py] gigabit pour adherents et membres actifs
Ignore-this: 3e710596ad27d77ed8b7ebee8eeb32cb Bon, pour pas faire de jaloux (paraît que c'est grave si certains sont avantagés et obtiennent quelque chose qu'on ne leur a jamais promis, sic), proof of concept qu'on peut limiter la synchro d'une prise. À part creuvarder, je vois un seul avantage à cette config: ça forcera les gens qui changent leur prise à mettre à jour la bdd en conséquence. darcs-hash:20121031024300-28565-973f0d1e481486a009c4f15ad7ab5fa3e04a4bfc.gz
This commit is contained in:
parent
c04010afbb
commit
ea60c76344
1 changed files with 15 additions and 2 deletions
|
@ -36,6 +36,8 @@ headers_by_model = {
|
|||
'HP 2610-48':'; J9088A Configuration Editor; Created on release #R.11.54',
|
||||
'HP 2910al-24G':'; J9145A Configuration Editor; Created on release #W.14.38'}
|
||||
|
||||
gigabit_models = ['J9021A', 'J9145A']
|
||||
|
||||
try:
|
||||
any
|
||||
except NameError:
|
||||
|
@ -159,7 +161,8 @@ dhcp-snooping"""
|
|||
interface_template = """interface %(prise)i
|
||||
enable
|
||||
name "%(nom)s"
|
||||
%(no_flowcontrol)sflow-control%(speed)s
|
||||
%(no_flowcontrol)s flow-control
|
||||
%(speed)s
|
||||
no lacp
|
||||
exit
|
||||
"""
|
||||
|
@ -463,14 +466,24 @@ exit
|
|||
# chambres.
|
||||
chbres = prise_chbres.get(annu_prise, [])
|
||||
|
||||
# Pour les switchs gigabit, on bloque le gigabit par défaut, sauf
|
||||
# pour les membres actifs et les clubs (cf plus bas)
|
||||
if model in gigabit_models:
|
||||
prise_params['speed'] = 'speed-duplex auto-10-100'
|
||||
|
||||
# Combien de machines sont succeptibles d'etre sur la prise
|
||||
nombre_de_machines = 0
|
||||
# Pour chaque chambre sur cette prise
|
||||
for chb in chbres:
|
||||
# On selectionne les eventuels adherents y residant
|
||||
for adherent in self.db.search("chbre=%s%s" % (bat, chb))['adherent']:
|
||||
residents = self.db.search("chbre=%s%s" % (bat, chb))
|
||||
for adherent in residents['adherent']:
|
||||
if adherent.droits(): #Seuls les membres actifs ont le droit à plus
|
||||
prise_params['speed'] = ''
|
||||
# On selectionne les machines fixes de l'adherent, et on ajoute le nombre au quota
|
||||
nombre_de_machines += len(adherent.machines_fixes())
|
||||
if residents['club']:
|
||||
prise_params['speed'] = ''
|
||||
|
||||
# Authentification RADIUS, pas pour les clubs...
|
||||
if not any("cl" in chbre.lower() for chbre in chbres):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue