Skip to content

Commit 36aec7f

Browse files
committed
Configure Fuzzit
1 parent 31ee66a commit 36aec7f

File tree

2 files changed

+53
-0
lines changed

2 files changed

+53
-0
lines changed

.travis.yml

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,38 @@
1+
dist: bionic
2+
13
language: go
24

35
go:
46
- "1.10.x"
57
- "1.11.x"
68
- "1.12.x"
79

10+
services:
11+
- docker
12+
13+
env:
14+
global:
15+
# FUZZIT_API_KEY
16+
secure: "FEm1wF/Ttd5RIvDPg5I/aSAhBWuvkvjmkInFxlVKP4BfLsR1B1ogXV4zKFQiZugyppBta+qP4qP+tSbThSvP9JOCr+/ivnTyYLg/DH1RfQnC7rJmAaZwHGHB+NwblRzU621uIZ4RVvaE391YVJf5519gc+M+bxZ6DO0ScdpbIAVV/7JR9c7Tuvoyi57/MEwAS39k7h83ms8JgRYwuvzpVH9nb6AfYs+CzXuRlsG5mHqFnmzLyG0ewnqh18OoWbyKQwBmM+EoIGmckM8NQZaXWBhEuDP7qdl+QatNfZtK3YwBx2plahBXXMee3NpOAEHOkWxNw1uMb1B8ILDrzrx8oX1A4fF/ZeJl7JLZS/fQUMhDnLG5soA0xaEoAvwhQIHFi3e207rsq9UJsnQlRGhRWzMvx85UR5z+yiur8nVUkogu1DGpH/BPdWbTs+d8behSr7t6Sepo7enjJOPJLz6U67JlP31HvnaLICMEXxJy54BAbdu/47vqFp15lcIMHyDzPltHHWi6uGuRFQPYz8pM5ZAKQ945dO/ZELyEHbjUiLTMFeVoANzahuY56BX6hvsygcOlBWB6ukoJANvxgvM/QYkbh9dMBajYsZqHCWOKRVbBakkqPAUqkBNPOADTp5ZgUwmRySIGzX2X+Efl7cFYZVu+IJl968F8hqYajvS/VCs="
17+
818
script:
919
- go get github.com/golang/dep/cmd/dep github.com/stretchr/testify
1020
- dep ensure -v -vendor-only
1121
- go test ./gojay/codegen/test/... -race
1222
- go test -race -coverprofile=coverage.txt -covermode=atomic
1323

24+
jobs:
25+
include:
26+
- stage: Fuzz regression
27+
go: 1.12.x
28+
script:
29+
- ./fuzzit.sh local-regression
30+
31+
- stage: Fuzz
32+
if: branch = master AND type IN (push)
33+
go: 1.12.x
34+
script:
35+
- ./fuzzit.sh fuzzing
36+
1437
after_success:
1538
- bash <(curl -s https://codecov.io/bash)

fuzzit.sh

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
#!/bin/bash
2+
set -xe
3+
4+
if [ "$#" -ne 1 ]; then
5+
echo "Usage: $0 <fuzz-type>"
6+
exit 1
7+
fi
8+
9+
NAME=gojay
10+
TYPE=$1
11+
12+
function fuzz {
13+
TARGET=$NAME-$1
14+
FUNCTION=Fuzz$2
15+
go-fuzz-build -libfuzzer -func $FUNCTION -o fuzzer.a .
16+
clang -fsanitize=fuzzer fuzzer.a -o fuzzer
17+
./fuzzit create job --type $TYPE $TARGET fuzzer
18+
}
19+
20+
# Setup
21+
export GO111MODULE="off"
22+
go get -u github.com/dvyukov/go-fuzz/go-fuzz github.com/dvyukov/go-fuzz/go-fuzz-build
23+
dep ensure -v
24+
wget -q -O fuzzit https://github.com/fuzzitdev/fuzzit/releases/download/v2.4.29/fuzzit_Linux_x86_64
25+
chmod a+x fuzzit
26+
27+
# Fuzz
28+
fuzz unmarshal Unmarshal
29+
fuzz decode Decode
30+
fuzz stream Stream

0 commit comments

Comments
 (0)