1 |
commit: 9db9735a51152a0be92177f22ddaa9dc6ca70163 |
2 |
Author: Matt Turner <mattst88 <AT> gentoo <DOT> org> |
3 |
AuthorDate: Thu Oct 29 00:28:24 2020 +0000 |
4 |
Commit: Matt Turner <mattst88 <AT> gentoo <DOT> org> |
5 |
CommitDate: Thu Oct 29 14:48:58 2020 +0000 |
6 |
URL: https://gitweb.gentoo.org/proj/catalyst.git/commit/?id=9db9735a |
7 |
|
8 |
catalyst: Move action_sequence out of self.settings[] |
9 |
|
10 |
This self.settings[] dictionary is very similar to the god object |
11 |
anti-pattern. Moving action_sequence out it starts us down the road of |
12 |
fixing this. |
13 |
|
14 |
Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org> |
15 |
|
16 |
catalyst/base/stagebase.py | 17 +++++++++-------- |
17 |
catalyst/targets/embedded.py | 2 +- |
18 |
catalyst/targets/livecd_stage1.py | 2 +- |
19 |
catalyst/targets/livecd_stage2.py | 6 +++--- |
20 |
catalyst/targets/netboot.py | 2 +- |
21 |
catalyst/targets/stage1.py | 12 ++++++------ |
22 |
catalyst/targets/stage4.py | 2 +- |
23 |
7 files changed, 22 insertions(+), 21 deletions(-) |
24 |
|
25 |
diff --git a/catalyst/base/stagebase.py b/catalyst/base/stagebase.py |
26 |
index e71ce344..19c248e3 100644 |
27 |
--- a/catalyst/base/stagebase.py |
28 |
+++ b/catalyst/base/stagebase.py |
29 |
@@ -63,6 +63,7 @@ class StageBase(TargetBase, ClearBase, GenBase): |
30 |
"portage_overlay", |
31 |
"portage_prefix", |
32 |
]) |
33 |
+ self.action_sequence = [] |
34 |
|
35 |
self.set_valid_build_kernel_vars(addlargs) |
36 |
TargetBase.__init__(self, myspec, addlargs) |
37 |
@@ -476,13 +477,13 @@ class StageBase(TargetBase, ClearBase, GenBase): |
38 |
Or it calls the normal set_action_sequence() for the target stage. |
39 |
""" |
40 |
if "purgeonly" in self.settings["options"]: |
41 |
- self.settings["action_sequence"] = ["remove_chroot"] |
42 |
+ self.action_sequence = ["remove_chroot"] |
43 |
return |
44 |
self.set_action_sequence() |
45 |
|
46 |
def set_action_sequence(self): |
47 |
"""Set basic stage1, 2, 3 action sequences""" |
48 |
- self.settings['action_sequence'] = [ |
49 |
+ self.action_sequence = [ |
50 |
"unpack", |
51 |
"setup_confdir", |
52 |
"portage_overlay", |
53 |
@@ -498,14 +499,14 @@ class StageBase(TargetBase, ClearBase, GenBase): |
54 |
|
55 |
def set_completion_action_sequences(self): |
56 |
if "fetch" not in self.settings["options"]: |
57 |
- self.settings["action_sequence"].append("capture") |
58 |
+ self.action_sequence.append("capture") |
59 |
if "keepwork" in self.settings["options"]: |
60 |
- self.settings["action_sequence"].append("clear_autoresume") |
61 |
+ self.action_sequence.append("clear_autoresume") |
62 |
elif "seedcache" in self.settings["options"]: |
63 |
- self.settings["action_sequence"].append("remove_autoresume") |
64 |
+ self.action_sequence.append("remove_autoresume") |
65 |
else: |
66 |
- self.settings["action_sequence"].append("remove_autoresume") |
67 |
- self.settings["action_sequence"].append("remove_chroot") |
68 |
+ self.action_sequence.append("remove_autoresume") |
69 |
+ self.action_sequence.append("remove_chroot") |
70 |
|
71 |
def set_use(self): |
72 |
use = self.settings["spec_prefix"] + "/use" |
73 |
@@ -1367,7 +1368,7 @@ class StageBase(TargetBase, ClearBase, GenBase): |
74 |
self.purge() |
75 |
|
76 |
failure = False |
77 |
- for x in self.settings["action_sequence"]: |
78 |
+ for x in self.action_sequence: |
79 |
log.notice('--- Running action sequence: %s', x) |
80 |
sys.stdout.flush() |
81 |
try: |
82 |
|
83 |
diff --git a/catalyst/targets/embedded.py b/catalyst/targets/embedded.py |
84 |
index 99739512..3899cf1b 100644 |
85 |
--- a/catalyst/targets/embedded.py |
86 |
+++ b/catalyst/targets/embedded.py |
87 |
@@ -41,7 +41,7 @@ class embedded(StageBase): |
88 |
StageBase.__init__(self, spec, addlargs) |
89 |
|
90 |
def set_action_sequence(self): |
91 |
- self.settings['action_sequence'] = [ |
92 |
+ self.action_sequence = [ |
93 |
"unpack", |
94 |
"config_profile_link", |
95 |
"setup_confdir", |
96 |
|
97 |
diff --git a/catalyst/targets/livecd_stage1.py b/catalyst/targets/livecd_stage1.py |
98 |
index f0b6be8b..b8c26cb1 100644 |
99 |
--- a/catalyst/targets/livecd_stage1.py |
100 |
+++ b/catalyst/targets/livecd_stage1.py |
101 |
@@ -23,7 +23,7 @@ class livecd_stage1(StageBase): |
102 |
StageBase.__init__(self, spec, addlargs) |
103 |
|
104 |
def set_action_sequence(self): |
105 |
- self.settings['action_sequence'] = [ |
106 |
+ self.action_sequence = [ |
107 |
"unpack", |
108 |
"config_profile_link", |
109 |
"setup_confdir", |
110 |
|
111 |
diff --git a/catalyst/targets/livecd_stage2.py b/catalyst/targets/livecd_stage2.py |
112 |
index 88c0d95c..cac16b6e 100644 |
113 |
--- a/catalyst/targets/livecd_stage2.py |
114 |
+++ b/catalyst/targets/livecd_stage2.py |
115 |
@@ -87,7 +87,7 @@ class livecd_stage2(StageBase): |
116 |
print_traceback=True) |
117 |
|
118 |
def set_action_sequence(self): |
119 |
- self.settings['action_sequence'] = [ |
120 |
+ self.action_sequence = [ |
121 |
"unpack", |
122 |
"config_profile_link", |
123 |
"setup_confdir", |
124 |
@@ -99,7 +99,7 @@ class livecd_stage2(StageBase): |
125 |
"build_kernel" |
126 |
] |
127 |
if "fetch" not in self.settings["options"]: |
128 |
- self.settings['action_sequence'] += [ |
129 |
+ self.action_sequence += [ |
130 |
"bootloader", |
131 |
"preclean", |
132 |
"livecd_update", |
133 |
@@ -115,4 +115,4 @@ class livecd_stage2(StageBase): |
134 |
"setup_overlay", |
135 |
"create_iso", |
136 |
] |
137 |
- self.settings["action_sequence"].append("clear_autoresume") |
138 |
+ self.action_sequence.append("clear_autoresume") |
139 |
|
140 |
diff --git a/catalyst/targets/netboot.py b/catalyst/targets/netboot.py |
141 |
index 5620e0d3..61583f0d 100644 |
142 |
--- a/catalyst/targets/netboot.py |
143 |
+++ b/catalyst/targets/netboot.py |
144 |
@@ -160,7 +160,7 @@ class netboot(StageBase): |
145 |
self.resume.enable("empty") |
146 |
|
147 |
def set_action_sequence(self): |
148 |
- self.settings['action_sequence'] = [ |
149 |
+ self.action_sequence = [ |
150 |
"unpack", |
151 |
"config_profile_link", |
152 |
"setup_confdir", |
153 |
|
154 |
diff --git a/catalyst/targets/stage1.py b/catalyst/targets/stage1.py |
155 |
index 2c09a41f..89b30fe1 100644 |
156 |
--- a/catalyst/targets/stage1.py |
157 |
+++ b/catalyst/targets/stage1.py |
158 |
@@ -87,15 +87,15 @@ class stage1(StageBase): |
159 |
chroot for re-use in stage2 without the need to unpack it. |
160 |
''' |
161 |
if "fetch" not in self.settings["options"]: |
162 |
- self.settings["action_sequence"].append("capture") |
163 |
+ self.action_sequence.append("capture") |
164 |
if "keepwork" in self.settings["options"]: |
165 |
- self.settings["action_sequence"].append("clear_autoresume") |
166 |
+ self.action_sequence.append("clear_autoresume") |
167 |
elif "seedcache" in self.settings["options"]: |
168 |
- self.settings["action_sequence"].append("remove_autoresume") |
169 |
- self.settings["action_sequence"].append("clean_stage1") |
170 |
+ self.action_sequence.append("remove_autoresume") |
171 |
+ self.action_sequence.append("clean_stage1") |
172 |
else: |
173 |
- self.settings["action_sequence"].append("remove_autoresume") |
174 |
- self.settings["action_sequence"].append("remove_chroot") |
175 |
+ self.action_sequence.append("remove_autoresume") |
176 |
+ self.action_sequence.append("remove_chroot") |
177 |
|
178 |
def clean_stage1(self): |
179 |
'''seedcache is enabled, so salvage the /tmp/stage1root, |
180 |
|
181 |
diff --git a/catalyst/targets/stage4.py b/catalyst/targets/stage4.py |
182 |
index 346c0845..eef24a73 100644 |
183 |
--- a/catalyst/targets/stage4.py |
184 |
+++ b/catalyst/targets/stage4.py |
185 |
@@ -39,7 +39,7 @@ class stage4(StageBase): |
186 |
self.settings["cleanables"].remove('/etc/resolv.conf') |
187 |
|
188 |
def set_action_sequence(self): |
189 |
- self.settings['action_sequence'] = [ |
190 |
+ self.action_sequence = [ |
191 |
"unpack", |
192 |
"config_profile_link", |
193 |
"setup_confdir", |