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