diff options
author | Narayan Desai <desai@mcs.anl.gov> | 2004-08-11 20:40:57 +0000 |
---|---|---|
committer | Narayan Desai <desai@mcs.anl.gov> | 2004-08-11 20:40:57 +0000 |
commit | 37e5ec4ec9af78f50416482bb8cb090e6de58992 (patch) | |
tree | e560ac4f0859e9f95fdb1babfdb45d2b79c83ae7 /src | |
parent | 387f482e66f441c089b79b762dfdb02657b35385 (diff) | |
download | bcfg2-37e5ec4ec9af78f50416482bb8cb090e6de58992.tar.gz bcfg2-37e5ec4ec9af78f50416482bb8cb090e6de58992.tar.bz2 bcfg2-37e5ec4ec9af78f50416482bb8cb090e6de58992.zip |
Rename: generators/fstab.py -> src/lib/Server/Generators/fstab.py
(Logical change 1.37)
git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@207 ce84e21b-d406-0410-9b95-82705330c041
Diffstat (limited to 'src')
-rw-r--r-- | src/lib/Server/Generators/fstab.py | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/src/lib/Server/Generators/fstab.py b/src/lib/Server/Generators/fstab.py index e69de29bb..bc5535b4d 100644 --- a/src/lib/Server/Generators/fstab.py +++ b/src/lib/Server/Generators/fstab.py @@ -0,0 +1,45 @@ +#!/usr/bin/env python + +from re import compile + +from Generator import Generator +from GeneratorUtils import DirectoryBacked +from Types import ConfigFile + +class fstab(Generator): + __name__ = 'fstab' + __version__ = '$Id$' + __author__ = 'bcfg-dev@mcs.anl.gov' + + mayor = compile("\$MAYOR") + + def __setup__(self): + self.repo = DirectoryBacked(self.data, self.core.fam) + self.__provides__ = {'ConfigFile':{'/etc/fstab':self.build_fstab}} + + def build_fstab(self,name,metadata): + node = metadata.hostname.split('.')[0] + if 'ccn' in node: + nodeclass = 'compute' + mayor = 'cct%sm.mcs.anl.gov'%((int(node[3:]) / 32) + 1) + elif 'ccviz' in node: + nodeclass = 'compute' + mayor = 'cct10m.mcs.anl.gov' + elif 'ccsto' in node: + nodeclass = 'storage' + mayor = 'cct9m.mcs.anl.gov' + elif 'cct' in node: + nodeclass = 'mayor' + mayor = 'ccprez.mcs.anl.gov' + elif 'ccfs' in node: + nodeclass = 'fs' + mayor = 'ccprez.mcs.anl.gov' + else: + raise KeyError,client + + fsname = "fstab_%s"%(nodeclass) + fsdata = self.repo.entries[fsname].data + + return ConfigFile('/etc/fstab','root','root','0644',self.mayor.sub(mayor,fsdata)) + + |