[PATCH 09/10] Enable DNFPayload on specific triggers.
akozumpl at redhat.com
akozumpl at redhat.com
Mon Aug 19 13:19:43 UTC 2013
From: Ales Kozumplik <ales at redhat.com>
DNFPayload is only enabled if 'dnf' is in /proc/cmdline or if '--dnf' is
passed to the Anaconda main executable.
Once DNFPayload is instantiated based on installclasses this commit can be
reverted.
---
anaconda | 4 ++++
pyanaconda/__init__.py | 2 ++
pyanaconda/flags.py | 4 ++++
3 files changed, 10 insertions(+)
diff --git a/anaconda b/anaconda
index be0a5d8..fd6c68c 100755
--- a/anaconda
+++ b/anaconda
@@ -302,6 +302,7 @@ def parseOptions(argv=None, cmdline=None):
op.add_option("--leavebootorder", action="store_true", default=False)
op.add_option("--noeject", action="store_false", dest="eject", default=True)
op.add_option("--extlinux", action="store_true", default=False)
+ op.add_option("--dnf", action="store_true", default=False)
# some defaults change based on cmdline flags
if cmdline is not None:
@@ -839,6 +840,9 @@ if __name__ == "__main__":
if opts.extlinux:
flags.extlinux = opts.extlinux
+ if opts.dnf:
+ flags.dnf = opts.dnf
+
# set flags
flags.dmraid = opts.dmraid
flags.mpath = opts.mpath
diff --git a/pyanaconda/__init__.py b/pyanaconda/__init__.py
index 9102d17..2e29329 100644
--- a/pyanaconda/__init__.py
+++ b/pyanaconda/__init__.py
@@ -120,6 +120,8 @@ class Anaconda(object):
elif self.ksdata.method.method == "liveimg":
from pyanaconda.packaging.livepayload import LiveImageKSPayload
klass = LiveImageKSPayload
+ elif flags.dnf:
+ from pyanaconda.packaging.dnfpayload import DNFPayload as klass
else:
from pyanaconda.packaging.yumpayload import YumPayload
klass = YumPayload
diff --git a/pyanaconda/flags.py b/pyanaconda/flags.py
index 3c21de3..b119dad 100644
--- a/pyanaconda/flags.py
+++ b/pyanaconda/flags.py
@@ -69,6 +69,7 @@ class Flags(object):
self.gpt = False
self.leavebootorder = False
self.testing = False
+ self.dnf = False
# ksprompt is whether or not to prompt for missing ksdata
self.ksprompt = True
# parse the boot commandline
@@ -94,6 +95,9 @@ class Flags(object):
if "gpt" in self.cmdline:
self.gpt = True
+ if "dnf" in self.cmdline:
+ self.dnf = True
+
cmdline_files = ['/proc/cmdline', '/run/install/cmdline',
'/run/install/cmdline.d/*.conf', '/etc/cmdline']
class BootArgs(OrderedDict):
--
1.8.3.1
More information about the anaconda-patches
mailing list