diff options
author | Martin Sivak <msivak@redhat.com> | 2012-05-23 16:19:08 +0200 |
---|---|---|
committer | Martin Sivak <msivak@redhat.com> | 2012-05-24 10:46:45 +0200 |
commit | 17ed92de4218290cd5c57847ec605e5f994479ee (patch) | |
tree | 5b9b5fd9bef9620cc952b388f85a4fae3c1c99d4 /pyanaconda/installclass.py | |
parent | 40056b6190080b4a422c41a12eb81bbe1af7db8d (diff) | |
download | anaconda-17ed92de4218290cd5c57847ec605e5f994479ee.tar.gz anaconda-17ed92de4218290cd5c57847ec605e5f994479ee.tar.xz anaconda-17ed92de4218290cd5c57847ec605e5f994479ee.zip |
Improve the runspoke.py tool and make it callable from make
make runspoke SPOKE_MODULE=source
or
make runspoke SPOKE_MODULE=source SPOKE_CLASS=InstallSource
- runspoke now accepts the name of the module containing
the spoke the user wants to run on command line and
will find the spoke automatically
- as an optional second argument, the script accepts the
name of the spoke class
- install classes and gi introspection files are looked for
in anaconda sources first, so there is no need to install
the anaconda-widgets package to the system
- anaconda should use ANACONDA_DATA, ANACONDA_WIDGETS_DATA and
ANACONDA_INSTALL_CLASSES env variables to look for data files
if those variables are defined
- there was a circular dependency between yuminstall,
backend and kickstart modules, which caused import yuminstall
to fail, because:
yuminstall called backend, which called kickstart, which
requested NoSuchGroup from yuminstall. NoSuchGroup was
present in the source, but much later, so it hadn't been
evaluated yet and the import failed with missing symbol error.
Diffstat (limited to 'pyanaconda/installclass.py')
-rw-r--r-- | pyanaconda/installclass.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/pyanaconda/installclass.py b/pyanaconda/installclass.py index 7e8aca125..75a039853 100644 --- a/pyanaconda/installclass.py +++ b/pyanaconda/installclass.py @@ -245,7 +245,11 @@ def availableClasses(showHidden=0): path = [] - for dir in ["installclasses", + env_path = [] + if "ANACONDA_INSTALL_CLASSES" in os.environ: + env_path += os.environ["ANACONDA_INSTALL_CLASSES"].split(":") + + for dir in env_path + ["installclasses", "/tmp/updates/pyanaconda/installclasses", "/tmp/product/pyanaconda/installclasses", "%s/pyanaconda/installclasses" % get_python_lib(plat_specific=1) ]: @@ -316,6 +320,7 @@ def getBaseInstallClass(): # figure out what installclass we should base on. allavail = availableClasses(showHidden = 1) avail = availableClasses(showHidden = 0) + if len(avail) == 1: (cname, cobject, clogo) = avail[0] log.info("using only installclass %s" %(cname,)) |