Improve `compile_native_go_fuzzer` command to detect fuzzer functions more precisely.
The grep command used in compile_native_go_fuzzer does not work correctly when fuzzers have similar names. Consider the following example:
We have two fuzzers:
-
FuzzGatewayAPIToXDS -
FuzzGatewayAPIToXDSWithGatewayClass
Compile command:
compile_native_go_fuzzer github.com/envoyproxy/gateway/test/fuzz FuzzGatewayAPIToXDS FuzzGatewayAPIToXDS
Since the target string appears in both fuzzer names, the grep command returns 2 matches instead of 1.
This PR adds an additional "(" to more precisely identify the fuzzer name.
Also, added set -x for better debugging.
/gcbrun trial_build.py go-attestation go-coredns go-dns go-ethereum go-json-iterator go-redis go-sftp go-snappy go-sqlite3 golang golang-protobuf gonids grpc-go syzkaller kubernetes --sanitizer coverage --fuzzing-engine libfuzzer
@sudiptob2 can you let me know when you have finished making commits? I need to launch an experiment and would prefer to do this once you believe this is ready
@DavidKorczynski hey got it, its ready. I just rebased it. I wont rebase it anymore unless you are done with the experiment.
/gcbrun trial_build.py go-attestation go-coredns go-dns go-ethereum go-json-iterator go-redis go-sftp go-snappy go-sqlite3 golang golang-protobuf gonids grpc-go syzkaller kubernetes --sanitizer coverage --fuzzing-engine libfuzzer
@DavidKorczynski Do we think this is ready?
@DavidKorczynski Do we think this is ready?
yes
@DavidKorczynski @AdamKorcz any update on when we can merge this PR?
/gcbrun trial_build.py go-attestation go-coredns go-dns go-ethereum go-json-iterator go-redis go-sftp go-snappy go-sqlite3 golang golang-protobuf gonids grpc-go syzkaller kubernetes --sanitizer coverage --fuzzing-engine libfuzzer
/gcbrun trial_build.py go --fuzzing-engines libfuzzer --sanitizers coverage address