tree: df268f49fb196b38469602bd6fb93750b508acee [path history] [tgz]
  1. static/
  2. .gcloudignore
  3. access.go
  4. access_test.go
  5. admin.go
  6. admin.html
  7. api.go
  8. api_test.go
  9. app.yaml
  10. app_test.go
  11. asset_storage.go
  12. asset_storage_test.go
  13. backports.html
  14. bisect_test.go
  15. bug.html
  16. cache.go
  17. cache_test.go
  18. commit_poll_test.go
  19. config.go
  20. cron.yaml
  21. dashboard.go
  22. discussion.go
  23. discussion_test.go
  24. email_test.go
  25. entities.go
  26. entities_test.go
  27. error.html
  28. fix_test.go
  29. getjson_test.go
  30. graph_bugs.html
  31. graph_crashes.html
  32. graph_fuzzing.html
  33. graph_lifetimes.html
  34. graphs.go
  35. graphs_test.go
  36. handler.go
  37. index.yaml
  38. jobs.go
  39. jobs_test.go
  40. kcidb.go
  41. label.go
  42. linux_reporting.go
  43. linux_reporting_test.go
  44. mail_bisect_result.txt
  45. mail_bug.txt
  46. mail_fix_candidate.txt
  47. mail_label_notif.txt
  48. mail_subsystem.txt
  49. mail_test_result.txt
  50. main.go
  51. main.html
  52. main_test.go
  53. manager.html
  54. notifications_test.go
  55. public_json_api.go
  56. README.md
  57. reporting.go
  58. reporting_email.go
  59. reporting_external.go
  60. reporting_lists.go
  61. reporting_test.go
  62. repos.html
  63. repro_test.go
  64. stats.go
  65. subsystem.go
  66. subsystem_page.html
  67. subsystem_test.go
  68. subsystems.html
  69. templates.html
  70. terminal.html
  71. tree.go
  72. tree_test.go
  73. util_test.go
dashboard/app/README.md

Dashboard

dashboard is an App Engine app that powers syzbot. The main deployment is at syzkaller.appspot.com.

It is so-called Standard environment Go app.
To deploy and manage the app you need to install Google Cloud SDK.
For more details about App Engine refer to the docs.

Note: The app is not stable and is not officially supported. It's here only to power the main deployment.

Here is “big” picture of a possible setup: Overall picture of syzbot setup

Note: the vector source is here; to update: make a copy of the source, edit, download a png, update the png and include a link to your vector copy into the PR.

To deploy the app you need to add a .go file with production config. The config specifies kernel namespaces, bug reporting details, API keys, etc. Tests contain a config example, but it's not ready for production use.

The app also needs one or more syz-ci instances running elsewhere. The syz-ci instances do the actual fuzzing, bisection, patch testing, etc.

The app can be deployed by gcloud app deploy ./dashboard/app/app.yaml.

Next optional flags are available:

  1. “--no-promote” to test the app firs and migrate the traffic to it later.
  2. “--verbosity=info” to see what files are going to be deployed.

The app tests can be run with:

go test github.com/google/syzkaller/dashboard/app

During development it's handy to use -short flag to not run the longest tests.

If any of the tests fail, use -v flag to see log of what happens and -run flag to run a single test, e.g.:

go test -short -v -run=TestEmailReport github.com/google/syzkaller/dashboard/app