[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-API] How to create Templates for Network Installs that need additional Kernel-parameters ?? eliloader.py - patch suggestion


  • To: xen-api@xxxxxxxxxxxxxxxxxxx
  • From: "Andreas Balg" <a.balg@xxxxxxxx>
  • Date: Mon, 05 Nov 2012 17:38:13 +0100
  • Delivery-date: Mon, 05 Nov 2012 16:38:44 +0000
  • List-id: User and development list for XCP and XAPI <xen-api.lists.xen.org>

Hello everybody,

I just tried to get a hands off auto-installation-template up and running on XCP 1.6(still beta1)  - But I'm wondering how I might pass those basic extra arguments to the installer-image using eliloader

e.g. in pxeconf I'd say something like:

        KERNEL installer/centos/6/i386/vmlinuz
        APPEND initrd=installer/centos/6/i386/initrd.img ip=dhcp ksdevice=eth0 noipv6 ks=http://mirror.ournet.com/clavis/kickstart/centos/6./i386/basesystem.cfg

I tried to stuff the Kickstart-parameters "ip=dhcp ksdevice=eth0 noipv6 ks=http://mirror.ournet.com/kickstart/centos/6.3/i386/basesystem.cfg" in PV-args of the Template - but as expected, for the first time the installer runs eliloader.py It does not seem to take those into account but replace it with it's autogenerated stuff.

Is there another way I do not understand how I am supposed to do this in XCP 1.6 or would I have to make something like the patch for eliloader.py below
introducing yet another "other-config" as I did in the experimenetal patch below (which works for me - but I'd rather prefer not to patch the hypervisor-scripts for my needs ...)

*** /opt/xensource/libexec/eliloader.py.orig    2012-09-14 20:37:37.000000000 +0200
--- /opt/xensource/libexec/eliloader.py 2012-11-05 17:08:56.000000000 +0100
***************
*** 350,355 ****
--- 350,356 ----
             'install-distro':     collect(other_config, 'install-distro', 'rhlike'),
             'install-round':      collect(other_config, 'install-round', '1'),
             'install-arch':       collect(other_config, 'install-arch', 'i386'),
+            'install-args':       collect(other_config, 'install-args', None),
             'install-kernel':     collect(other_config, 'install-kernel', None),
             'install-ramdisk':    collect(other_config, 'install-ramdisk', None),
             'install-proxy':      collect(other_config, 'install-proxy', None),
***************
*** 785,795 ****
--- 786,801 ----

      # Put it all together
      args += " " + extra_args
      if vnc:
          args += " vnc"
      if vncpasswd:
          args += " vncpassword=%s" % vncpasswd

+     # Or set user defined options if available
+     if other_config.has_key('install-args'):
+       args = other_config['install-args']
+
      if ramdisk is not None:
          print 'linux (kernel %s)(ramdisk %s)(args "%s")' % (kernel, ramdisk, args)
      else:

Cheers,
Andreas

--
XiNCS GmbH
Schmidshaus 118
9064 Hundwil

Tel.: +41 71 544 47 10
Fax: +41 71 544 47 11

HR-Ar: CH-300.4.015.621-9
MwSt.: CHE-114.002.95
_______________________________________________
Xen-api mailing list
Xen-api@xxxxxxxxxxxxx
http://lists.xen.org/cgi-bin/mailman/listinfo/xen-api

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.