Skip to content

Commit d398fb6

Browse files
Jeny Sadadianuclearcat
authored andcommitted
kernelci.runtime.lava: fix setup node
Do not create `setup` node if `auto-login-action` and `kernel-messages` test cases are not perfomed in a lava job. For example https://lava.ciplatform.org/scheduler/job/1289216 job doesn't even reach login prompt due to infra error. Signed-off-by: Jeny Sadadia <[email protected]>
1 parent 908421e commit d398fb6

File tree

1 file changed

+11
-3
lines changed

1 file changed

+11
-3
lines changed

kernelci/runtime/lava.py

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -130,13 +130,17 @@ def _get_login_case(cls, tests):
130130
login = (
131131
tests_map.get('auto-login-action') or tests_map.get('login-action')
132132
)
133+
if not login:
134+
return None
133135
result = login and login['result'] == 'pass'
134136
return 'pass' if result else 'fail'
135137

136138
@classmethod
137139
def _get_kernelmsg_case(cls, tests):
138140
tests_map = {test['name']: test for test in tests}
139141
kernelmsg = tests_map.get('kernel-messages')
142+
if not kernelmsg:
143+
return None
140144
result = kernelmsg and kernelmsg['result'] == 'pass'
141145
return 'pass' if result else 'fail'
142146

@@ -169,10 +173,14 @@ def get_results(self):
169173
for suite_name, suite_results in self._data['results'].items():
170174
tests = yaml.safe_load(suite_results)
171175
if suite_name == 'lava':
172-
results['setup'] = {
173-
'login': self._get_login_case(tests),
174-
'kernelmsg': self._get_kernelmsg_case(tests)
176+
setup = {
177+
key: result for key, result in {
178+
'login': self._get_login_case(tests),
179+
'kernelmsg': self._get_kernelmsg_case(tests)
180+
}.items() if result
175181
}
182+
if setup:
183+
results['setup'] = setup
176184
else:
177185
suite_name = suite_name.partition("_")[2]
178186
results[suite_name] = self._get_suite_results(tests)

0 commit comments

Comments
 (0)