Re: Cobbler API - Mac registration problem

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

 



Eamonn Walsh wrote:
What I'm hoping to achieve here, is to register the system with cobbler on first boot, I'm planning on plugging it into a script that runs at first boot anyway. Since auto reg isn't part of cobbler 0.8.3-3.el5, I'm hoping to use this as a work around.

It works fine registering the system name and profile, but falls over when I try and register the mac. Will have a snoop around in the code..

You have to do auto registration via the kickstart fetcher -- as Anaconda doesn't send the MAC for all %pre/%post requests (like I previously thought...). Another thing that had to be done was to make some changes to allow those kind of URLs to be tolerated by the virt code -- so all in all, your best bet is 0.9.X.



On Wed, Apr 30, 2008 at 12:41 PM, Michael DeHaan <mdehaan@xxxxxxxxxx <mailto:mdehaan@xxxxxxxxxx>> wrote:

    Michael DeHaan wrote:

        Eamonn Walsh wrote:

            Its just a test script at the moment, I want to see what
            it can do

            system_id = remote.new_system(token)
            remote.modify_system(system_id,'name', 'Imatest2',token)
            remote.modify_system(system_id,'profile', 'Testing',token)
            remote.modify_system(system_id, 'mac',
            'FF:EE:DD:CC:BB:AA',token)
            remote.save_system(system_id,token)

            I think the problem is because the 'mac' key is in a
            nested list, not sure though.


        Ah, this is your script? Glad to see more interest in API hacking!
        Yes, I did some work to add this recently. Definitely check
        out the devel branch. If you are interested in the code, see
        'remote.py' and 'services.py'.
        The idea was to consolidate all of the cgi-bin stuff on
        mod_python to simplify things. All of the mod_python code
        ('services.py') effectively sends requests
        down to cobblerd via XMLRPC ('remote.py'). Since this relies
        on kssendmac in the kernel options line, you won't see results
        from running "wget", but if you request those kickstart URLs
        from Anaconda registration (if enabled in settings via the new
        option) will occur.

        It has some security features in that it will not add a system
        if mac is already in the "database" and works by detecting the
        mac of the system
        when they request the kickstart file from the mod python
        kickstart generator (kickstarts are no longer statically
        generated on the filesystem).

        --Michael


    In the interest of completeness, the issue is that cobbler now
    suppports multiple network interfaces. So your script has to use
    the API to modify network interfaces, which is slightly varied
    from the above. See remote.py on the devel branch for how that is
    done. The WebUI, which is written against the same XMLRPC
    interface, is also a good reference. (cobbler/web/CobblerWeb.py)




            On Wed, Apr 30, 2008 at 12:10 PM, Pablo Iranzo Gómez
            <Pablo.Iranzo@xxxxxxxxxx <mailto:Pablo.Iranzo@xxxxxxxxxx>
            <mailto:Pablo.Iranzo@xxxxxxxxxx
            <mailto:Pablo.Iranzo@xxxxxxxxxx>>> wrote:


            Is it possible to have the script to play with it?

            Will try to check how this works and possible usages :)

            Thanks!
            Pablo

            El mié, 30-04-2008 a las 09:42 +0100, Eamonn Walsh escribió:
            > Hi Guys,
            >
            > Doing some work with the cobbler api and getting the
            fallowing error
            >
            > Traceback (most recent call last):
            > File "rpc-cobbler-test", line 20, in ?
            > remote.modify_system(system_id, 'interfaces : mac_address',
            > 'FF:EE:DD:CC:BB:AA', token)
            > File "/usr/lib/python2.4/xmlrpclib
            > .py", line 1096, in __call__
            > return self.__send(self.__name, args)
            > File "/usr/lib/python2.4/xmlrpclib.py", line 1383, in
            __request
            > verbose=self.__verbose
            > File "/usr/lib/python2.4/xmlrpclib.py", line 1147, in
            request
            > return self._parse_response(h.getfile(), sock)
            > File "/usr/lib/python2.4/xmlrpclib.py", line 1286, in
            > _parse_response
            > return u.close()
            > File "/usr/lib/python2.4/xmlrpclib.py", line 744, in close
            > raise Fault(**self._stack[0])
            > xmlrpclib.Fault: <Fault 1:
            "cobbler.cexceptions.CX:'object has no
            > method: mac'">
            >
            > Line of code causing this problem:
            >
            > remote.modify_system(sys_id, 'mac', 'AA:BB:CC:DD:EE:FF',
            token)
            >
            > Any ideas? Using cobbler 0.8.3-3.el5
            >
            > Thanks,
            >
            > Eamonn
            > _______________________________________________
            > et-mgmt-tools mailing list
            > et-mgmt-tools@xxxxxxxxxx
            <mailto:et-mgmt-tools@xxxxxxxxxx>
            <mailto:et-mgmt-tools@xxxxxxxxxx
            <mailto:et-mgmt-tools@xxxxxxxxxx>>
            > https://www.redhat.com/mailman/listinfo/et-mgmt-tools
            --

            Pablo Iranzo Gómez (Pablo.Iranzo@xxxxxxxxxx
            <mailto:Pablo.Iranzo@xxxxxxxxxx>
            <mailto:Pablo.Iranzo@xxxxxxxxxx
            <mailto:Pablo.Iranzo@xxxxxxxxxx>>)
            RHCE/Global Profesional Services Consultant Spain
            Phone: +34 645 01 01 49 (CET/CEST)
            GnuPG KeyID: 0xFAD3CF0D
            ---
            Dirección Comercial: C/Jose Bardasano Baos, 9, Edif. Gorbea 3,
            planta 3ºD, 28016 Madrid, Spain
            Dirección Registrada: Red Hat S.L., C/ Velazquez 63,
            Madrid 28001,
            Spain
            Inscrita en el Reg. Mercantil de Madrid – C.I.F. B82657941

            _______________________________________________
            et-mgmt-tools mailing list
            et-mgmt-tools@xxxxxxxxxx <mailto:et-mgmt-tools@xxxxxxxxxx>
            <mailto:et-mgmt-tools@xxxxxxxxxx
            <mailto:et-mgmt-tools@xxxxxxxxxx>>
            https://www.redhat.com/mailman/listinfo/et-mgmt-tools


            ------------------------------------------------------------------------

            _______________________________________________
            et-mgmt-tools mailing list
            et-mgmt-tools@xxxxxxxxxx <mailto:et-mgmt-tools@xxxxxxxxxx>
            https://www.redhat.com/mailman/listinfo/et-mgmt-tools


        _______________________________________________
        et-mgmt-tools mailing list
        et-mgmt-tools@xxxxxxxxxx <mailto:et-mgmt-tools@xxxxxxxxxx>
        https://www.redhat.com/mailman/listinfo/et-mgmt-tools


    _______________________________________________
    et-mgmt-tools mailing list
    et-mgmt-tools@xxxxxxxxxx <mailto:et-mgmt-tools@xxxxxxxxxx>
    https://www.redhat.com/mailman/listinfo/et-mgmt-tools


------------------------------------------------------------------------

_______________________________________________
et-mgmt-tools mailing list
et-mgmt-tools@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/et-mgmt-tools

_______________________________________________
et-mgmt-tools mailing list
et-mgmt-tools@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/et-mgmt-tools

[Index of Archives]     [Fedora Users]     [Fedora Legacy List]     [Fedora Maintainers]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux