Commit Graph

886 Commits

Author SHA1 Message Date
jonathanmetzman 1ed145d9e7
[bisect_clang] Add comment on testing (#2957) 2019-10-16 12:45:05 -07:00
Max Moroz 3dd03528b7
[infra] Use more generic approach to skip code coverage for Go projects. (#2953)
* [infra] Use more generic approach to skip code coverage for Go projects.

* address review comments
2019-10-16 07:35:22 -07:00
Max Moroz 5943ef19d4
Reland "[infra] Use fuzz target basename in the coverage script." (#2903) (#2944) 2019-10-14 09:34:30 -07:00
Max Moroz c805b49636
[infra] Add a fixed seed value to the libFuzzer command in bad_build_check. (#2943) 2019-10-14 09:34:14 -07:00
Abhishek Arya 342e8d0b42
Renable bad build check for jsoncpp_fuzzer. (#2945) 2019-10-11 17:06:18 -07:00
Abhishek Arya 45574e0197
Skip jsoncpp_fuzzer bad build check to let startup crash file. (#2941) 2019-10-11 07:24:06 -07:00
jonathanmetzman 378472cf0b
Add scripts to bisect clang commits that introduced regressions (#2849)
Add script to bisect bad clang rolls.
2019-10-03 15:35:31 -07:00
Max Moroz 099b86d384
Revert "[infra] Use fuzz target basename in the coverage script. (#2896)" (#2903)
This reverts commit 5a1d15bd9a.
2019-09-28 14:57:46 -07:00
Max Moroz 5a1d15bd9a
[infra] Use fuzz target basename in the coverage script. (#2896) 2019-09-27 13:04:49 -07:00
Max Moroz ccfb73427f
[infra] Skip code coverage job for gofuzz projects (#2714). (#2818) 2019-09-09 08:47:58 -07:00
jonathanmetzman 62c65ca878
Add SPIRV projects for blackbox fuzzing with GraphicsFuzz (#2812) 2019-09-06 13:49:09 -07:00
Max Moroz b3726e9d20
[infra] Use stable version of AFL from the upstream repo. (#2767) 2019-08-27 09:53:48 -07:00
Abhishek Arya e4bcc79247
Update builds_status.py 2019-08-23 13:44:21 -07:00
Abhishek Arya 32dd91bc40
Create storage client only once for build status updates. (#2756)
Should fix https://github.com/google/oss-fuzz/issues/2755.
2019-08-23 13:43:10 -07:00
Max Moroz b33c276c0d
[infra] Update base-builder image to support go-fuzz (#2714). (#2735)
* [infra] Update base-builder image to support go-fuzz (#2714).

* address review comments
2019-08-21 11:06:59 -07:00
Oliver Chang 018d80ed71
Fix build links on builds status page. (#2732)
Setting routeData does not work if there is no existing route set.

Also fix deploy to not cache files.
2019-08-21 11:36:18 +10:00
Ammar Askar 92d5ba8f9e [infra] Allow perma-links to project logs. Fixes #2690 (#2725) 2019-08-20 16:40:56 -07:00
Max Moroz 05a30d2ad5
[infra] Bad build check: lower UBSan calls threshold from 170 to 169. (#2692) 2019-08-13 12:50:29 -07:00
jonathanmetzman c4202c2f48
Revert "Use "x86" instead of "i386" for better name recognition. (#2685)" (#2687)
This reverts commit 0c6cc5cae8.
2019-08-12 10:54:18 -07:00
jonathanmetzman 0c6cc5cae8
Use "x86" instead of "i386" for better name recognition. (#2685)
It seems more people understand x86 than i386, use this term instead.
2019-08-12 10:35:16 -07:00
Abhishek Arya 6dd54f6381
Fix exception in updating badges on build status page 2019-08-12 09:39:42 -07:00
Ammar Askar 8776ec2327 [infra] Publish build badges on status page (#2513)
* [infra] Publish build badges on status page

* Address feedback from github PR

* Change success badge to 'fuzzing' and failing badge to 'build failing'
2019-08-12 09:25:22 -07:00
Abhishek Arya cf4af86972
Switch docs to new structure (#2663) 2019-08-07 07:37:16 -07:00
Max Moroz 12d6d31e44
[infra] Use gsutil "cp" instead of "rsync" for coverage job (#2585). (#2625) 2019-07-23 10:12:37 -07:00
jonathanmetzman e8df83fc35
[infra] Make travis deal with adding a new project or removing one (#2566)
This change causes travis to skip building a project when a project does not have build.sh file, a common scenario when a project is added (and only a project.yaml file is added) or removed.
2019-07-02 16:11:37 -07:00
jonathanmetzman c158db4df2
[infra] Remove debug code breaking bad_build_check #2555 (#2557) 2019-06-30 12:52:29 -07:00
Max Moroz 5dece89e3c
[infra] Add support for dataflow builds to the helper script and build check (#1632). (#2501)
* [infra] Add support for dataflow builds to the helper script and build check (#1632).

* Update travis config file.

* Address self-review comments and specify dataflow sanitizer for zstd as well.

* Fix fuzzing_engines in project.yaml

* Fix bad build check for DFSan.

* Use "hasattr" in helper.py to check the sanitizer argument.

* Address more review comments.

* Remove DataFlow config from zstd.

* fix a typo
2019-06-12 11:08:15 -07:00
Max Moroz 3830c427b2 [infra] Ignore return code when removing seed corpus for dataflow build. 2019-06-10 15:32:51 -07:00
Max Moroz 7250d70833
[infra] Run tests on the builder after patching MSan libraries. (#2497)
* [WORK IN PROGRESS] Debug Travis failure when doing build check for MSan build.

* Change order of "MSan patch libraries" and "build check" steps.
2019-06-10 11:18:59 -07:00
Max Moroz 1f0a33c712 [infra] Do not archive seed corpus for dataflow builds. 2019-06-10 10:00:20 -07:00
Max Moroz 3be06d5e78
[docs] Remove `-lFuzzingEngine` reference from base-builder image readme.
//cc @jonathanmetzman
2019-05-31 16:50:29 -07:00
Max Moroz d1539ce271
[infra] Change auto-generated build.sh template to use $LIB_FUZZING_ENGINE.
//cc @jonathanmetzman
2019-05-31 16:46:48 -07:00
jonathanmetzman 4963f6ed93
Use AFL_DRIVER_DONT_DEFER=1 in AFL checks since bad_build_check doesn't support .options (#2471) 2019-05-28 10:29:16 -07:00
Abhishek Arya 4d3073292a
Update test_all 2019-05-28 09:09:33 -07:00
Abhishek Arya e2003e1f39
Remove code for copying dataflow scripts (#2461)
Dataflow scripts are removed in
51570280af
2019-05-24 13:01:21 -07:00
jonathanmetzman 12fa975bc3 Update regex for clang revision (#2460) 2019-05-24 11:19:55 -07:00
Evgeny Vereshchagin 91a17744a0 infra: skip files whose names start with afl while looking for fuzz targets (#2445)
This should help to get rid of the "WARNING: corpus for systemd_afl-showmap not found:"
messages (that are harmless but confusing a bit). In general _get_fuzz_targets
should probably be in sync with ./infra/base-images/base-runner/test_all (where a file
is considered a fuzz target if grep can find "ELF" in it and so on).
2019-05-24 11:06:22 -07:00
jonathanmetzman bdd9519f44
[i386] Use different bucket for i386 builds. (#2435) 2019-05-17 12:47:11 -07:00
jonathanmetzman 7073fb976c
[i386] Do i386 builds of projects that have opted-in (#2416) 2019-05-15 14:00:57 -07:00
jonathanmetzman 898fc435c6
[travis] Use job matrix to split up builds to avoid timeout (#2423) 2019-05-15 11:01:53 -07:00
jonathanmetzman 95dd538c60
[infra] Update name of check_instrumentation and error messages (#2414) 2019-05-15 10:35:06 -07:00
Evgeny Vereshchagin 2361c62433 [infra] make it possible to override the percentage of targets that can be broken (#2419)
10% is an absolutely sensible default in general especially for single-purpose
libraries like json-parsers. When large "umbrella" projects (like systemd) are
fuzzed with 30 fuzzers (and counting (hopefully :-)) covering code scattered all
over their repositories it's too easy to introduce a broken fuzzer or break a couple
of fuzzers accidentally even after running `check_build`. Waiting for two to three
days for ClusterFuzz to open an issue isn't ideal from the point of view of large
open-source project maintainers (where generally contributors come and go) so one
solution would be to run something like when PRs are opened
```sh
helper.py check_build ALLOWED_BROKEN_TARGETS_PERCENTAGE=0 ...
```
and catch issues as early as possible (and fix them while the context isn't
completely faded away).

I also considered changing this with `sed` and rebuilding `base-images/base-runner`
locally but it takes too much time, looks too kludgy (even to me) and is likely to be broken
in a week or so :-)
2019-05-15 06:38:09 -07:00
jonathanmetzman 8f9a3fa22b
[infra] Fix check_instrumentation in bad_build_check (#2412) 2019-05-14 10:36:48 -07:00
jonathanmetzman 3976a002af
[i386] Improve linking and bad build check (#2410)
Improve linking by copying i386 libs instead of adding `-L` to `CXXFLAGS`
Get bad_build_check working for i386 binaries and add architecture check.
2019-05-14 10:18:02 -07:00
jonathanmetzman 3df4e14520
Revert "[infra] Roll clang to r360398 (#2405)" (#2408)
This reverts commit 4a9941d9c4.
2019-05-13 15:07:29 -07:00
jonathanmetzman c60fcd7247
Add initial support for i386 builds (#2347)
This feature is not yet officially supported
2019-05-13 15:01:25 -07:00
jonathanmetzman a181b43364
[travis] Add requirements file for travis and fix diff command (#2406) 2019-05-13 13:04:23 -07:00
jonathanmetzman 4a9941d9c4
[infra] Roll clang to r360398 (#2405) 2019-05-13 10:26:40 -07:00
jonathanmetzman f9a6870971
[travis] Improve build script (#2404)
Improve print statements and handling of projects that do not list sanitizers in project.yaml.
2019-05-13 09:55:06 -07:00
jonathanmetzman 3727791e43
[travis] Dont build the same project multiple times (#2399) 2019-05-13 09:39:24 -07:00