Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions extra-files/system-tests/dom0.sls
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,9 @@ dom0-packages:
- btrfs-progs
- python3-nose2
- python3-objgraph
{% if grains['osrelease'] != '4.2' %}
- python3-deepmerge
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wrap this in {% if grains['osrelease'] >= '4.3' %} (or just != '4.2') - the package is not available in F37 (R4.2 dom0).

{% endif %}
- patch
- qubes-video-companion-dom0
- split-gpg2-dom0
Expand Down
13 changes: 12 additions & 1 deletion utils/github_reporting.py
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,18 @@ def format_results(results, jobs, reference_jobs=None, instability_analysis=None
# try to find reference value
ref = None
if job_name in ref_job_perf_data:
ref = ref_job_perf_data[job_name].get(test_name, None)
if 'dispvm_perf' in job_name:
ref_name = test_name.split(' ')[0]
ref_data = [
v
for k, v in ref_job_perf_data[job_name].items()
if k.startswith(ref_name + ' ')
]
if ref_data:
ref = ref_data[0]
else:
ref_name = test_name
ref = ref_job_perf_data[job_name].get(ref_name, None)

degradation = False
alert = None
Expand Down
27 changes: 18 additions & 9 deletions utils/lib/openqa_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -341,15 +341,24 @@ def get_performance_data(self):


if 'dispvm_perf' in json_data['job']['name']:
for line in perf_data.split("\n"):
if not line:
continue
data = line.split(" ")
name = data[0]
value = data[1]
data_dict = dict(item.split("=", maxsplit=1) for item in data[2:])
key = name + "(avg:" + data_dict["average"] + ")"
result[key] = float(value)
try:
data = json.loads(perf_data)
for key, value in data.items():
name = value["name"]
mean = value["mean"]
total = value["total"]
key += " (mean:" + str(mean) + ")"
result[key] = float(total)
except json.decoder.JSONDecodeError:
for line in perf_data.split("\n"):
if not line:
continue
data = line.split(" ")
name = data[0]
total = data[1]
data_dict = dict(v.split("=", maxsplit=1) for v in data[2:])
key = name + " (mean:" + data_dict["average"] + ")"
result[key] = float(total)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

total is not set in this scope... value?

return result

if 'qrexec_perf' in json_data['job']['name']:
Expand Down