aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Turner <mattst88@gentoo.org>2020-10-28 20:28:24 -0400
committerMatt Turner <mattst88@gentoo.org>2020-10-30 18:40:52 -0400
commitdfc4ed516b839bbc225cc7459e8c3085970801f6 (patch)
treed941a6f90b06c52bed653d212d2251fd48985386
parentcatalyst: Use libmount for handling mounts (diff)
downloadcatalyst-dfc4ed51.tar.gz
catalyst-dfc4ed51.tar.bz2
catalyst-dfc4ed51.zip
catalyst: Move action_sequence out of self.settings[]
This self.settings[] dictionary is very similar to the god object anti-pattern. Moving action_sequence out it starts us down the road of fixing this. Signed-off-by: Matt Turner <mattst88@gentoo.org>
-rw-r--r--catalyst/base/stagebase.py17
-rw-r--r--catalyst/targets/embedded.py2
-rw-r--r--catalyst/targets/livecd_stage1.py2
-rw-r--r--catalyst/targets/livecd_stage2.py6
-rw-r--r--catalyst/targets/netboot.py2
-rw-r--r--catalyst/targets/stage1.py12
-rw-r--r--catalyst/targets/stage4.py2
7 files changed, 22 insertions, 21 deletions
diff --git a/catalyst/base/stagebase.py b/catalyst/base/stagebase.py
index 73eacfbe..801df2fb 100644
--- a/catalyst/base/stagebase.py
+++ b/catalyst/base/stagebase.py
@@ -64,6 +64,7 @@ class StageBase(TargetBase, ClearBase, GenBase):
"portage_overlay",
"portage_prefix",
])
+ self.action_sequence = []
self.set_valid_build_kernel_vars(addlargs)
TargetBase.__init__(self, myspec, addlargs)
@@ -477,13 +478,13 @@ class StageBase(TargetBase, ClearBase, GenBase):
Or it calls the normal set_action_sequence() for the target stage.
"""
if "purgeonly" in self.settings["options"]:
- self.settings["action_sequence"] = ["remove_chroot"]
+ self.action_sequence = ["remove_chroot"]
return
self.set_action_sequence()
def set_action_sequence(self):
"""Set basic stage1, 2, 3 action sequences"""
- self.settings['action_sequence'] = [
+ self.action_sequence = [
"unpack",
"setup_confdir",
"portage_overlay",
@@ -499,14 +500,14 @@ class StageBase(TargetBase, ClearBase, GenBase):
def set_completion_action_sequences(self):
if "fetch" not in self.settings["options"]:
- self.settings["action_sequence"].append("capture")
+ self.action_sequence.append("capture")
if "keepwork" in self.settings["options"]:
- self.settings["action_sequence"].append("clear_autoresume")
+ self.action_sequence.append("clear_autoresume")
elif "seedcache" in self.settings["options"]:
- self.settings["action_sequence"].append("remove_autoresume")
+ self.action_sequence.append("remove_autoresume")
else:
- self.settings["action_sequence"].append("remove_autoresume")
- self.settings["action_sequence"].append("remove_chroot")
+ self.action_sequence.append("remove_autoresume")
+ self.action_sequence.append("remove_chroot")
def set_use(self):
use = self.settings["spec_prefix"] + "/use"
@@ -1380,7 +1381,7 @@ class StageBase(TargetBase, ClearBase, GenBase):
self.purge()
failure = False
- for x in self.settings["action_sequence"]:
+ for x in self.action_sequence:
log.notice('--- Running action sequence: %s', x)
sys.stdout.flush()
try:
diff --git a/catalyst/targets/embedded.py b/catalyst/targets/embedded.py
index 99739512..3899cf1b 100644
--- a/catalyst/targets/embedded.py
+++ b/catalyst/targets/embedded.py
@@ -41,7 +41,7 @@ class embedded(StageBase):
StageBase.__init__(self, spec, addlargs)
def set_action_sequence(self):
- self.settings['action_sequence'] = [
+ self.action_sequence = [
"unpack",
"config_profile_link",
"setup_confdir",
diff --git a/catalyst/targets/livecd_stage1.py b/catalyst/targets/livecd_stage1.py
index f0b6be8b..b8c26cb1 100644
--- a/catalyst/targets/livecd_stage1.py
+++ b/catalyst/targets/livecd_stage1.py
@@ -23,7 +23,7 @@ class livecd_stage1(StageBase):
StageBase.__init__(self, spec, addlargs)
def set_action_sequence(self):
- self.settings['action_sequence'] = [
+ self.action_sequence = [
"unpack",
"config_profile_link",
"setup_confdir",
diff --git a/catalyst/targets/livecd_stage2.py b/catalyst/targets/livecd_stage2.py
index 88c0d95c..cac16b6e 100644
--- a/catalyst/targets/livecd_stage2.py
+++ b/catalyst/targets/livecd_stage2.py
@@ -87,7 +87,7 @@ class livecd_stage2(StageBase):
print_traceback=True)
def set_action_sequence(self):
- self.settings['action_sequence'] = [
+ self.action_sequence = [
"unpack",
"config_profile_link",
"setup_confdir",
@@ -99,7 +99,7 @@ class livecd_stage2(StageBase):
"build_kernel"
]
if "fetch" not in self.settings["options"]:
- self.settings['action_sequence'] += [
+ self.action_sequence += [
"bootloader",
"preclean",
"livecd_update",
@@ -115,4 +115,4 @@ class livecd_stage2(StageBase):
"setup_overlay",
"create_iso",
]
- self.settings["action_sequence"].append("clear_autoresume")
+ self.action_sequence.append("clear_autoresume")
diff --git a/catalyst/targets/netboot.py b/catalyst/targets/netboot.py
index 5620e0d3..61583f0d 100644
--- a/catalyst/targets/netboot.py
+++ b/catalyst/targets/netboot.py
@@ -160,7 +160,7 @@ class netboot(StageBase):
self.resume.enable("empty")
def set_action_sequence(self):
- self.settings['action_sequence'] = [
+ self.action_sequence = [
"unpack",
"config_profile_link",
"setup_confdir",
diff --git a/catalyst/targets/stage1.py b/catalyst/targets/stage1.py
index 2c09a41f..89b30fe1 100644
--- a/catalyst/targets/stage1.py
+++ b/catalyst/targets/stage1.py
@@ -87,15 +87,15 @@ class stage1(StageBase):
chroot for re-use in stage2 without the need to unpack it.
'''
if "fetch" not in self.settings["options"]:
- self.settings["action_sequence"].append("capture")
+ self.action_sequence.append("capture")
if "keepwork" in self.settings["options"]:
- self.settings["action_sequence"].append("clear_autoresume")
+ self.action_sequence.append("clear_autoresume")
elif "seedcache" in self.settings["options"]:
- self.settings["action_sequence"].append("remove_autoresume")
- self.settings["action_sequence"].append("clean_stage1")
+ self.action_sequence.append("remove_autoresume")
+ self.action_sequence.append("clean_stage1")
else:
- self.settings["action_sequence"].append("remove_autoresume")
- self.settings["action_sequence"].append("remove_chroot")
+ self.action_sequence.append("remove_autoresume")
+ self.action_sequence.append("remove_chroot")
def clean_stage1(self):
'''seedcache is enabled, so salvage the /tmp/stage1root,
diff --git a/catalyst/targets/stage4.py b/catalyst/targets/stage4.py
index 346c0845..eef24a73 100644
--- a/catalyst/targets/stage4.py
+++ b/catalyst/targets/stage4.py
@@ -39,7 +39,7 @@ class stage4(StageBase):
self.settings["cleanables"].remove('/etc/resolv.conf')
def set_action_sequence(self):
- self.settings['action_sequence'] = [
+ self.action_sequence = [
"unpack",
"config_profile_link",
"setup_confdir",