crans_bcfg2/etc/python/common.py
Jeremie Dimino ab8d12ef62 typo
darcs-hash:20090603115831-af139-201b0771fba70491dea04b0d6b8c34a1a239e290.gz
2009-06-03 13:58:31 +02:00

78 lines
2.1 KiB
Python

# -*- coding: utf-8 -*-
#
# common.py
# ---------
#
# Copyright (C) 2007 Jeremie Dimino <jeremie@dimino.org>
#
# This file is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This file is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Street #330, Boston, MA 02111-1307, USA.
'''Fichier inclu par tous les scripts du plugin Python de bcfg2'''
import sys
sys.path.append('/usr/scripts/gestion')
def comment(line):
'''Écrit un commentaire'''
out(comment_start + " " + line + "\n")
emacs_mode = "conf-unix"
def header(desc=None, mode=None):
'''Écrit une en-tête de fichier avec un commentaire'''
comment("-*- mode: %s; coding: utf-8 -*-" % (mode or emacs_mode))
comment("")
comment("Fichier gere par BCfg2 (avec le plugin Python)")
comment("")
if desc:
lines = desc.split('\n')
if lines[-1] == "":
lines.pop()
for line in lines:
comment(line)
out("\n")
def var(name, value, doc=None):
'''Écrit la définition d'une variable'''
if doc: comment(doc)
out("%s = %s\n" % (name, value))
# Le nom d'hote court, la partie avant le premier '.'
hostname = metadata.hostname.split('.',1)[0]
# Le nom d'hote sur le vlan public
pubhostname = hostname + ".crans.org"
# Le nom d'hote sur le vlan
admhostname = hostname + ".adm.crans.org"
def has(group):
return group in metadata.groups
def yesno(b):
if b:
return "yes"
else:
return "no"
def onoff(b):
if b:
return "on"
else:
return "off"
def outl(line):
out(line)
out("\n")