Skip to content

Commit

Permalink
infra: print log data when Python fuzz_target fails (#12502)
Browse files Browse the repository at this point in the history
## Description

This will make it easier to debug coverage failures that are not
reproducible locally.

The failure that I am trying to debug:
- https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=62231
-
https://oss-fuzz-build-logs.storage.googleapis.com/log-c420cf0c-f073-4c42-b75c-422971ef272e.txt

```
Step #5: Already have image (with digest): gcr.io/oss-fuzz-base/base-runner
Step #5: Entering python fuzzing
Step #5: Error happened getting coverage of fuzz_parse
Step #5: This is likely because Atheris did not exit gracefully
```

Similar log data is displayed in other blocks:

https://github.com/google/oss-fuzz/blob/f7165902492d5cff5ee23c018875395061a3bd2b/infra/base-images/base-runner/coverage#L101-L105


https://github.com/google/oss-fuzz/blob/f7165902492d5cff5ee23c018875395061a3bd2b/infra/base-images/base-runner/coverage#L149-L153


https://github.com/google/oss-fuzz/blob/f7165902492d5cff5ee23c018875395061a3bd2b/infra/base-images/base-runner/coverage#L206-L210


https://github.com/google/oss-fuzz/blob/f7165902492d5cff5ee23c018875395061a3bd2b/infra/base-images/base-runner/coverage#L255-L260

---

This PR is a continuation of
#12405 with a renamed branch to
avoid trial-build errors:

```
ERROR: (gcloud.builds.submit) INVALID_ARGUMENT: invalid build: invalid build tag "testing-cm/display-coverage-log": must match format "^[\\w][\\w.-]{0,127}$"
```

Co-authored-by: Vitor Guidi <vitorguidi@gmail.com>
  • Loading branch information
correctmost and vitorguidi authored Oct 7, 2024
1 parent 16f697c commit 0fe8dae
Showing 1 changed file with 1 addition and 0 deletions.
1 change: 1 addition & 0 deletions infra/base-images/base-runner/coverage
Original file line number Diff line number Diff line change
Expand Up @@ -180,6 +180,7 @@ function run_python_fuzz_target {
if (( $? != 0 )); then
echo "Error happened getting coverage of $target"
echo "This is likely because Atheris did not exit gracefully"
cat $LOGS_DIR/$target.log
return 0
fi
mv .coverage $OUT/.coverage_$target
Expand Down

0 comments on commit 0fe8dae

Please sign in to comment.