Vieux plugin Python aux archives

This commit is contained in:
Pierre-Elliott Bécue 2015-05-23 16:11:34 +02:00
parent 3fb338e937
commit 1df9d480af
8 changed files with 0 additions and 0 deletions

View file

@ -1,57 +0,0 @@
#!/usr/bin/python
import os, sys, time
import Bcfg2.Logger, Bcfg2.Server.Core, Bcfg2.Options
import Bcfg2.Server.Plugins.Metadata, Bcfg2.Server.Plugin
class searchCore(Bcfg2.Server.Core.Core):
# On définit une classe parce qu'il faut mettre quelque chose au-dessus
# de la classe Core si on veut récupérer les informations ...
# C'est nul.
def __init__(self, repo, plgs, struct, gens, passwd, svn,
encoding):
try:
Bcfg2.Server.Core.Core.__init__(self, repo, plgs, struct, gens,
passwd, svn, encoding)
except Bcfg2.Server.Core.CoreInitError, msg:
print "Core load failed because %s" % msg
raise SystemExit(1)
i = 0
while self.fam.Service() or i < 5:
i += 1
def do_search(self, searchgroup):
"""Search for clients belonging to a group"""
clients = []
clist = self.metadata.clients.keys()
clist.sort()
for client in clist:
profile = self.metadata.clients[client]
gdata = [grp for grp in self.metadata.groups[profile][1]]
if searchgroup in gdata:
clients.append(client)
return clients
if __name__ == '__main__':
# Bon ça ce sont les trucs recopiés de bcfg2-info
optinfo = {
'configfile': Bcfg2.Options.CFILE,
'help': Bcfg2.Options.HELP,
}
optinfo.update({'repo': Bcfg2.Options.SERVER_REPOSITORY,
'svn': Bcfg2.Options.SERVER_SVN,
'plugins': Bcfg2.Options.SERVER_PLUGINS,
'structures': Bcfg2.Options.SERVER_STRUCTURES,
'generators': Bcfg2.Options.SERVER_GENERATORS,
'password': Bcfg2.Options.SERVER_PASSWORD,
'event debug': Bcfg2.Options.DEBUG,
'encoding': Bcfg2.Options.ENCODING})
setup = Bcfg2.Options.OptionParser(optinfo)
setup.parse([])
loop = searchCore(setup['repo'], setup['plugins'], setup['structures'],
setup['generators'], setup['password'], '',
setup['encoding'])
# On cherche les clients
clients = loop.do_search('backup-client')
# On génère un truc qui va bien pour ces clients