[Spacewalk-list] rhnreg_ks on F15
Miroslav Suchý
msuchy at redhat.com
Wed Apr 13 10:49:21 UTC 2011
On 04/13/2011 08:24 AM, Sandro "red" Mathys wrote:
> Hi,
>
> We tried to deploy a F15 system (with the latest from updates-testing)
> from spacewalk 1.3 which works just fine (yay!) except for rhnreg_ks
> (rhn-setup 1.4.15-1.fc14) which fails with the following traceback:
>
> [Tue Apr 12 16:15:15 2011] up2date
> Traceback (most recent call last):
> File "/usr/sbin/rhnreg_ks", line 213, in <module>
> cli.run()
> File "/usr/share/rhn/up2date_client/rhncli.py", line 74, in run
> sys.exit(self.main() or 0)
> File "/usr/sbin/rhnreg_ks", line 101, in main
> hardwareList = hardware.Hardware()
> File "/usr/share/rhn/up2date_client/hardware.py", line 674, in Hardware
> allhw = get_devices()
> File "/usr/share/rhn/up2date_client/hardware_gudev.py", line 45, in
> get_devices
> 'desc': _get_device_desc(device),
> File "/usr/share/rhn/up2date_client/hardware_gudev.py", line 306, in
> _get_device_desc
> (vendor_id, model_id) = device.get_property('product').split('/')[:2]
> <type 'exceptions.AttributeError'>: 'NoneType' object has no attribute 'split'
>
> It seems that device.get_propery('product') returns None but does
> somebody have an idea why it does so? On what information does this
> rely? i.e. is there a service not running that should be or a package
> missing?
>
> Is the extracted information actually important? If not, the thrown
> exception should rather be caught.
It happens during gathering HW info. So if you run it with --nohardware,
you can workaround it.
It is some USB device. Can you run this python script in both %post
section of kickstart and after normal reboot? Check the diferences.
You should look for records with
XXX: None
import gudev
import glib
print "GUDEV VERSION: %s" % gudev.__version__
def print_device(device):
print "subsystem", device.get_subsystem()
print "devtype", device.get_devtype()
print "name", device.get_name()
print "number", device.get_number()
print "sysfs_path:", device.get_sysfs_path()
print "XXX: ", device.get_property('product')
devices = client.query_by_subsystem("usb")
for device in devices:
print_device(device)
But yeah, having test before that split is probably good idea. I will
put it in master, but this is not worth of backporting to 1.4.
--
Miroslav Suchy
Red Hat Satellite Engineering
More information about the Spacewalk-list
mailing list