Hey Andy, Good work, but it would be really convenient if you'd just send a pull request on Github? Can you also include the modified template file? I think this should go in the release24 branch, so could you target that please? Then i'll cherry-pick it back into the master branch.
If using Github is too much of a hassle let me know, and i manually apply your changes. On Wed, Feb 19, 2014 at 6:13 AM, Speagle , Andy <andy.spea...@netapp.com>wrote: > Ok... sorry, bad patch for first one. I didn't take into account the fact > that "obj" might not be a distro... duh: > > > > --- pxegen.py 2014-02-18 22:49:55.749451747 -0600 > > +++ pxegen.py.new 2014-02-18 23:11:17.788451213 -0600 > > @@ -814,6 +814,13 @@ > > > > blended = utils.blender(self.api, False, obj) > > > > + if obj.COLLECTION_TYPE == "distro": > > + if obj.os_version.startswith("esxi5"): > > + realbootcfg = > open(os.path.join(os.path.dirname(obj.kernel),'boot.cfg')).read() > > + bootmodules = re.findall(r'modules=(.*)',realbootcfg) > > + for modules in bootmodules: > > + blended['esx_modules'] = modules.replace('/','') > > + > > ksmeta = blended.get("ks_meta",{}) > > try: > > del blended["ks_meta"] > > > > Andy > > > > *From:* cobbler-devel-boun...@lists.fedorahosted.org [mailto: > cobbler-devel-boun...@lists.fedorahosted.org] *On Behalf Of *Speagle , > Andy > *Sent:* Tuesday, February 18, 2014 10:55 PM > *To:* cobbler-devel@lists.fedorahosted.org > *Subject:* Re: [cobbler-devel] ESXi 5.x boot.cfg issues > > > > Ok, > > > > In response to my own question... I figured it out. It doesn't look like a > sync is calling "generate_bootcfg" at all... and instead this is just being > handled in pxegen.write_templates instead. I modified that method to > handle scraping the "real" boot.cfg to grab the modules. Here's a patch... > though I'm a python hack. It works, but you may want to clean it up: > > > > --- pxegen.py 2014-02-18 22:49:55.749451747 -0600 > > +++ pxegen.py.new 2014-02-18 22:50:33.479452153 -0600 > > @@ -814,6 +814,12 @@ > > > > blended = utils.blender(self.api, False, obj) > > > > + if obj.os_version.startswith("esxi5"): > > + realbootcfg = > open(os.path.join(os.path.dirname(obj.kernel),'boot.cfg')).read() > > + bootmodules = re.findall(r'modules=(.*)',realbootcfg) > > + for modules in bootmodules: > > + blended['esx_modules'] = modules.replace('/','') > > + > > ksmeta = blended.get("ks_meta",{}) > > try: > > del blended["ks_meta"] > > > > Thanks, > > > > Andy Speagle > > > > *From:* Speagle , Andy > *Sent:* Tuesday, February 18, 2014 5:27 PM > *To:* 'cobbler-devel@lists.fedorahosted.org' > *Subject:* ESXi 5.x boot.cfg issues > > > > Hi Jörgen, > > > > I've been working on getting ESXi 5.x ISOs imported into Cobbler and this > seems to work well. However, this doesn't work well for those cases where > new or updated drivers or software has been injected into the ISO via > VMware's PowerCLI mechanism for this. The reason for this is that the > bootcfg*.template files have a hard-coded list of modules that are used to > create the cobbler-boot.cfg file. This list of modules should instead be > scraped from the real boot.cfg that's part of the ISO in order to cover the > case where things have been injected into the stock ISO. > > > > The only place this appears to be handled is by the "generate_bootcfg" > method in pxegen.py ... but, I'm having some trouble getting this > functionality to work. > > > > I added this little bit of code to "generate_bootcfg" in pxegen.py ... > > > > realbootcfg = > open(os.path.join(os.path.dirname(distro.kernel),'boot.cfg')).read() > > bootmodules = re.findall(r'modules=(.*)',realbootcfg) > > for modules in bootmodules: > > blended['esx_modules'] = modules.replace('/','') > > > > And replaced the hard-coded modules in > /etc/cobbler/pxe/bootcfg_esxi55.template with $esx_modules > > > > But... something's not quite right, it's not seeing that I set > blended['esx_modules'] ... so, perhaps the generate_bootcfg method isn't > where this work is done... > > > > Could you offer some insight, please? > > > > Thanks, > > > > Andy Speagle > > _______________________________________________ > cobbler-devel mailing list > cobbler-devel@lists.fedorahosted.org > https://lists.fedorahosted.org/mailman/listinfo/cobbler-devel > > -- Grtz, Jörgen Maas
_______________________________________________ cobbler-devel mailing list cobbler-devel@lists.fedorahosted.org https://lists.fedorahosted.org/mailman/listinfo/cobbler-devel