Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fuzzer: introduce fuzzer runner #28

Merged
merged 62 commits into from
May 13, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
62 commits
Select commit Hold shift + click to select a range
04f2836
fuzzer: introduce fuzzer runner
Ekleog Jan 24, 2022
99dc95f
fuzz: handle review comments
Ekleog Feb 3, 2022
d793175
fuzz: handle review comments
Ekleog Feb 4, 2022
f75b36e
fuzz: do not have so many thread
Ekleog Feb 4, 2022
f52b779
fuzz: use the fuzz.toml from the release branch
Ekleog Feb 11, 2022
7410baf
fuzz: fetch branches with refs/heads/, as otherwise the tag is fetched
Ekleog Feb 11, 2022
c5445b2
fuzz: add a bit more logs
Ekleog Feb 11, 2022
e541e51
fuzz: add basic zulip information uploader
Ekleog Feb 14, 2022
8f07452
fuzz: fix fuzzer restart behavior
Ekleog Feb 14, 2022
d0d973b
fuzz: report crashes on zulip
Ekleog Feb 14, 2022
f782c7e
fuzz: handle previous review comments
Ekleog Feb 14, 2022
6bed802
fuzz: comment the non-production code paths
Ekleog Feb 15, 2022
aac41c1
fuzz: make mypy happy
Ekleog Feb 15, 2022
ca00935
fuzz: run yapf with slight code changes
Ekleog Feb 15, 2022
187fef6
fuzz: make pylint happy
Ekleog Feb 15, 2022
8d683d4
fuzz: make a round through mypy, yapf and pylint again
Ekleog Feb 15, 2022
bfba03e
fuzz: handle review comments
Ekleog Feb 15, 2022
9a3f96f
fuzz: wrap long lines
Ekleog Feb 15, 2022
03a93b9
fuzz: handle review comments
Ekleog Feb 15, 2022
323725e
fuzz: handle review comments
Ekleog Feb 16, 2022
937bad4
gcs: unify connection logic between workers and fuzzers
Ekleog Feb 16, 2022
2c8bb09
fuzz: do not block the pause/resume behavior while building
Ekleog Feb 16, 2022
9652ec9
Revert "gcs: unify connection logic between workers and fuzzers"
Ekleog Feb 16, 2022
f0e060d
fuzz: add missing typing-extensions module to requirements
Ekleog Feb 17, 2022
6d9f638
fuzz: have systemd service not discard logs
Ekleog Feb 17, 2022
ab07a8c
fuzz: make sure fuzzers are paused while the tests run
Ekleog Feb 18, 2022
6a9c94c
fuzz: avoid busy-looping to leave all CPU to the actual fuzzing tasks
Ekleog Feb 18, 2022
4b9329b
fuzz: validate the zuliprc is provisioned well
Ekleog Feb 28, 2022
7a403d2
fuzz: handle review comments
Ekleog Feb 28, 2022
751b191
fuzz: set timeout to more than nayduck makes wait
Ekleog Mar 2, 2022
47bddd9
fuzz: log details about random picks
Ekleog Mar 4, 2022
bd4e055
fuzz: handle review comments
Ekleog Mar 8, 2022
27843b3
fuzz: actually redo random pick properly each time a new fuzzer is sp…
Ekleog Mar 8, 2022
2310d0a
fuzz: fix typo
Ekleog Mar 8, 2022
bf9a302
fuzz: rename stream to pagoda/ instead of nearinc/
Ekleog Mar 8, 2022
35efc95
fuzz: actually switch all places to pagoda
Ekleog Mar 8, 2022
a6c1b71
fuzz: also display the fuzz start timestamp, and add some information…
Ekleog Mar 14, 2022
bbfe720
fuzz: actually put the time in the log file
Ekleog Mar 14, 2022
1464045
fuzz: fix typo
Ekleog Mar 14, 2022
19faf25
fuzz: also restart the fuzzer upon a nayduck update
Ekleog Mar 17, 2022
e9f2637
fuzz: also copy and enable systemd service on worker hosts
Ekleog Mar 17, 2022
600bfe0
fuzz: also report hostname in logs
Ekleog Apr 5, 2022
c0d8b2e
fuzz: also log log path upon fuzzer crash
Ekleog Apr 6, 2022
6597f52
fuzz: upgrade rustup in a non-concurrent way
Ekleog Apr 8, 2022
4d6bfd9
fuzz: improve helper commands
Ekleog Apr 8, 2022
1afbe48
fuzz: prepended log lines were the other way around
Ekleog Apr 8, 2022
8ebbc0e
fuzz: handle review comments on all but workers/
Ekleog May 5, 2022
949d3a8
fuzz: always re-fetch the configuration, add a possibility to overrid…
Ekleog May 9, 2022
d320307
fuzz: handle review comments
Ekleog May 10, 2022
924079e
fuzz: also automatically update cargo-fuzz
Ekleog May 11, 2022
642f444
fuzz: fix indent error
Ekleog May 11, 2022
297b1bc
workers: expose FUZZER_CMD_PORT for fuzzer consumption again
Ekleog May 11, 2022
6feaf81
fuzz: fix typos
Ekleog May 11, 2022
2f65a49
fuzz: return a single element from random_weighted
Ekleog May 11, 2022
025f312
fuzz: reindent
Ekleog May 11, 2022
9d5d9f1
fuzz: fix most mypy errors
Ekleog May 11, 2022
4db4006
fuzz: remove trailing whitespace and useless pylint disable
Ekleog May 11, 2022
5c105b6
fuzz: handle review comments
Ekleog May 13, 2022
59baded
fuzz: fix last pylint warnings
Ekleog May 13, 2022
4be2af4
fuzz: handle review comments
Ekleog May 13, 2022
160c1a1
minor fixes
mina86 May 13, 2022
5bf345e
fuzz: rename FuzzProcess.poll
Ekleog May 13, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 10 additions & 7 deletions automation/setup-host.sh
Original file line number Diff line number Diff line change
Expand Up @@ -99,13 +99,16 @@ else
fi
fi

service=$type
if [ "$type" = frontend ]; then
service=ui
fi
cp -nvt /etc/systemd/system/ -- \
"/home/nayduck/nayduck/systemd/nayduck-$service.service"
systemctl enable "nayduck-$service"
case $type in
frontend) services=ui ;;
worker) services='worker fuzzer' ;;
*) services=$type
esac
for service in $services; do
cp -nvt /etc/systemd/system/ -- \
"/home/nayduck/nayduck/systemd/nayduck-$service.service"
systemctl enable "nayduck-$service"
done

rm -- "$basedir/setup-host.sh"

Expand Down
2 changes: 1 addition & 1 deletion automation/update.sh
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ if $only_frontend; then
exit 0
fi

for service in nayduck-ui nayduck-builder nayduck-worker; do
for service in nayduck-ui nayduck-builder nayduck-worker nayduck-fuzzer; do
if has_service "$service"; then
sudo systemctl restart "$service"
fi
Expand Down
1 change: 1 addition & 0 deletions check.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ parallel 'sh -xc {}' ::: \
'exec pylint -j0 */*.py' \
'exec python -m yapf -pir .' \
'exec mypy -m backend.backend' \
'exec mypy -m fuzzers.main' \
'exec mypy -m workers.builder' \
'exec mypy -m workers.worker' \
'exec shellcheck */*.sh'
Expand Down
Empty file added fuzzers/__init__.py
Empty file.
Loading