pykickstart usage of OrderedDict and SNAKE
Alexander Todorov
atodorov at redhat.com
Tue Nov 12 14:48:16 UTC 2013
Hi guys,
I'm working together with Fedora QA to configure a Beaker lab and a SNAKE server
in order to be able to run installation test jobs (among others) for Fedora. I'm
also opening up some of the test cases previously used internally at Red Hat.
Currently we're seeing the following issues:
1) SNAKE templates depend on pykickstart and need a recent version for the RHEL7
constant and support for latest syntax
2) The service is running on a RHEL 6 box with Python 2.6. After rebuilding
pykickstart-1.99.45-1 from SRPM and upgrading I hit this:
> Traceback (most recent call last):
> File "/usr/sbin/snake-server", line 117, in _dispatch
> return DocXMLRPCServer._dispatch(self, method, params)
> File "/usr/lib64/python2.6/SimpleXMLRPCServer.py", line 418, in _dispatch
> return func(*params)
> File "/usr/lib/python2.6/site-packages/snake/ksdb.py", line 167, in generate
> k = PyKickstart(version=ksversion)
> File "/usr/lib/python2.6/site-packages/snake/kickstart.py", line 61, in __init__
> self.setversion(version)
> File "/usr/lib/python2.6/site-packages/snake/kickstart.py", line 171, in setversion
> Kickstart.setversion(self,version)
> File "/usr/lib/python2.6/site-packages/snake/kickstart.py", line 77, in setversion
> self.handler = handlerclass()
> File "/usr/lib/python2.6/site-packages/pykickstart/base.py", line 275, in __init__
> self._registerCommands(mapping, dataMapping, commandUpdates, dataUpdates)
> File "/usr/lib/python2.6/site-packages/pykickstart/base.py", line 348, in _registerCommands
> from pykickstart.handlers.control import commandMap
> File "/usr/lib/python2.6/site-packages/pykickstart/handlers/control.py", line 21, in <module>
> from pykickstart.commands import *
> File "/usr/lib/python2.6/site-packages/pykickstart/commands/__init__.py", line 20, in <module>
> import authconfig, autopart, autostep, bootloader, btrfs, clearpart, cdrom, device
> File "/usr/lib/python2.6/site-packages/pykickstart/commands/autopart.py", line 24, in <module>
> from collections import OrderedDict
> ImportError: cannot import name OrderedDict
From what I see OrderedDict is from Python 2.7.
Questions are:
* How do you use it in pykickstart and is it possible to change this for
backward compatibility?
* In general what should we do with this kind of situation where a tool needs
the most recent package (in this case pykcisktart) but runs on a stable system
like RHEL 6 which has older software stack and the most recent versions are
incompatible?
--
Alex
More information about the Kickstart-list
mailing list