diff options
Diffstat (limited to 'cobbler/action_sync.py')
-rw-r--r-- | cobbler/action_sync.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/cobbler/action_sync.py b/cobbler/action_sync.py index 56e1c03..1b5bbf5 100644 --- a/cobbler/action_sync.py +++ b/cobbler/action_sync.py @@ -282,6 +282,7 @@ class BootSync: g.ks_meta, )) meta["yum_repo_stanza"] = self.generate_repo_stanza(g) + meta["yum_config_stanza"] = self.generate_config_stanza(g) self.apply_template(kickstart_path, meta, dest) except: traceback.print_exc() # leave this in, for now... @@ -302,6 +303,18 @@ class BootSync: buf = buf + "repo --name=%s --baseurl=%s\n" % (repo.name, http_url) return buf + def generate_config_stanza(self, profile): + # returns the line in post that would configure yum to use repos added with "cobbler repo add" + repos = profile.respos.split(" ") + buf = "" + for r in repos: + repo = self.repos.find(r) + if repo is None: + raise cexceptions.CobblerException("no_repo",r) + if not (repo.local_filename is None and repo.local_filename != ""): + buf = buf + "wget http://%s/cobbler/repo_mirror/this.repo -O /etc/yum.repos.d/%s.repo" % (self.settings.server, repo.name, repo.local_filename) + return buf + def validate_kickstarts_per_system(self): """ PXE provisioning needs kickstarts evaluated per system. @@ -331,6 +344,7 @@ class BootSync: s.ks_meta )) meta["yum_repo_stanza"] = self.generate_repo_stanza(profile) + meta["yum_config_stanza"] = self.generate_config_stanza(profile) self.apply_template(kickstart_path, meta, dest) except: msg = "err_kickstart2" |