summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndres Gomez <agomez@igalia.com>2020-05-01 00:05:07 +0300
committerEric Engestrom <eric@engestrom.ch>2020-05-13 14:44:57 +0200
commited872abd563f0f3bd9f784868097cd834dcf55c5 (patch)
treefc1fde07d54ede4239243e1b496361a0f11e7731
parentd1e3c0b430cd97d8098123da61e58bdf871365ef (diff)
gitlab-ci: correct tracie behavior with replay errors
[dump_trace_images] Info: Dumping trace /tmp/tracie.test.ap5pshYcsg/traces-db/trace1/magenta.testtrace... ERROR [dump_trace_images] Debug: === Failure log start === invalid literal for int() with base 16: 'in' [dump_trace_images] Debug: === Failure log end === [check_image] Trace /tmp/tracie.test.ap5pshYcsg/traces-db/trace1/magenta.testtrace couldn't be replayed. See above logs for more information. Traceback (most recent call last): File "/tmp/tracie.test.ap5pshYcsg/tracie.py", line 176, in <module> main() File "/tmp/tracie.test.ap5pshYcsg/tracie.py", line 164, in main ok, result = gitlab_check_trace(project_url, commit_id, args.device_name, trace, expectation) TypeError: cannot unpack non-iterable bool object Fixes: efbbf8bb81e ("tracie: Print results in a machine readable format") Signed-off-by: Andres Gomez <agomez@igalia.com> Reviewed-by: Rohan Garg <rohan.garg@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4839> (cherry picked from commit a6beb051aff4f11784cb974a1dc3647e74f2389c)
-rwxr-xr-x.gitlab-ci/tracie/tests/test.sh1
-rw-r--r--.gitlab-ci/tracie/tracie.py5
-rw-r--r--.pick_status.json2
3 files changed, 5 insertions, 3 deletions
diff --git a/.gitlab-ci/tracie/tests/test.sh b/.gitlab-ci/tracie/tests/test.sh
index 2f667fb8c60..7dbcfce3241 100755
--- a/.gitlab-ci/tracie/tests/test.sh
+++ b/.gitlab-ci/tracie/tests/test.sh
@@ -106,6 +106,7 @@ tracie_fails_on_dump_image_error() {
run_tracie
assert "[ $? != 0 ]"
+ assert_results_yaml_contains "error" "8e0a801367e1714463475a824dab363b" "trace1/magenta.testtrace" "$PWD/results/results.yml"
}
tracie_stores_only_logs_on_checksum_match() {
diff --git a/.gitlab-ci/tracie/tracie.py b/.gitlab-ci/tracie/tracie.py
index 6e640b41ec1..92ff9c200c3 100644
--- a/.gitlab-ci/tracie/tracie.py
+++ b/.gitlab-ci/tracie/tracie.py
@@ -106,11 +106,13 @@ def gitlab_check_trace(project_url, repo_commit, device_name, trace, expectation
result = {}
result[trace['path']] = {}
+ result[trace['path']]['expected'] = expectation['checksum']
trace_path = Path(TRACES_DB_PATH + trace['path'])
checksum, image_file, log_file = replay(trace_path, device_name)
if checksum is None:
- return False
+ result[trace['path']]['actual'] = 'error'
+ return False, result
elif checksum == expectation['checksum']:
print("[check_image] Images match for %s" % (trace['path']))
ok = True
@@ -131,7 +133,6 @@ def gitlab_check_trace(project_url, repo_commit, device_name, trace, expectation
shutil.move(image_file, os.path.join(results_path, image_name))
result[trace['path']]['image'] = os.path.join(dir_in_results, image_name)
- result[trace['path']]['expected'] = expectation['checksum']
result[trace['path']]['actual'] = checksum
return ok, result
diff --git a/.pick_status.json b/.pick_status.json
index 45282fb4657..1c23f560d7c 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -22,7 +22,7 @@
"description": "gitlab-ci: correct tracie behavior with replay errors",
"nominated": true,
"nomination_type": 1,
- "resolution": 0,
+ "resolution": 1,
"master_sha": null,
"because_sha": "efbbf8bb81e97a2b2d2e6e018750ef36cd460676"
},