diff options
author | Michael DeHaan <mdehaan@redhat.com> | 2006-12-12 16:44:20 -0500 |
---|---|---|
committer | Jim Meyering <jim@meyering.net> | 2006-12-12 16:44:20 -0500 |
commit | edec049f66add415f402e251b217c9f09f589e40 (patch) | |
tree | 5d0105157734f2425ea979113dfb9d86aa29d66f /cobbler/item_profile.py | |
parent | f24ee795f6296abc4643889bbb9d35b9fc128799 (diff) | |
download | third_party-cobbler-edec049f66add415f402e251b217c9f09f589e40.tar.gz third_party-cobbler-edec049f66add415f402e251b217c9f09f589e40.tar.xz third_party-cobbler-edec049f66add415f402e251b217c9f09f589e40.zip |
Preliminary support for repo mirroring.
Diffstat (limited to 'cobbler/item_profile.py')
-rw-r--r-- | cobbler/item_profile.py | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/cobbler/item_profile.py b/cobbler/item_profile.py index 311b54f..d293c04 100644 --- a/cobbler/item_profile.py +++ b/cobbler/item_profile.py @@ -39,6 +39,7 @@ class Profile(item.Item): self.virt_file_size = 5 # GB. 5 = Decent _minimum_ default for FC5. self.virt_ram = 512 # MB. Install with 256 not likely to pass self.virt_paravirt = True # hvm support is *NOT* in Koan (now) + self.repos = [] # names of cobbler repo definitions def from_datastruct(self,seed_data): """ @@ -49,7 +50,8 @@ class Profile(item.Item): self.kickstart = self.load_item(seed_data,'kickstart') self.kernel_options = self.load_item(seed_data,'kernel_options') self.ks_meta = self.load_item(seed_data,'ks_meta') - + self.repos = self.load_item(seed_data,'repos', "") + # virt specific self.virt_name = self.load_item(seed_data,'virt_name') self.virt_ram = self.load_item(seed_data,'virt_ram') @@ -77,6 +79,18 @@ class Profile(item.Item): return True raise cexceptions.CobblerException("no_distro") + def set_repos(self,repos): + repolist = repos.split(" ") + ok = True + for r in repolist: + if not self.config.repos().find(r): + ok = False + break + if ok: + self.repos = repolist + else: + raise cexceptions.CobblerException("no_repos") + def set_kickstart(self,kickstart): """ Sets the kickstart. This must be a NFS, HTTP, or FTP URL. @@ -187,7 +201,8 @@ class Profile(item.Item): 'virt_file_size' : self.virt_file_size, 'virt_ram' : self.virt_ram, 'virt_paravirt' : self.virt_paravirt, - 'ks_meta' : self.ks_meta + 'ks_meta' : self.ks_meta, + 'repos' : " ".join(self.repos) } def printable(self,id): @@ -203,5 +218,6 @@ class Profile(item.Item): buf = buf + "virt file size : %s\n" % self.virt_file_size buf = buf + "virt ram : %s\n" % self.virt_ram buf = buf + "virt paravirt : %s\n" % self.virt_paravirt + buf = buf + "repos : %s\n" % " ".join(self.repos) return buf |