| Skia Debugger |
| ========================== |
| |
| A web-based tool for viewing and inspecting SKP and MSKP files (recorded SkPictures) |
| |
| The debugger consists of one-page app that uses a build of CanvasKit with extra bindings. |
| The wasm module draws the SKP file being inspected to the canvas in the center of the page. |
| Source for this wasm module is in the Skia repository at //modules/canvaskit/debugger_bindings.cpp |
| |
| Running locally |
| --------------- |
| |
| Run the following to run the debugger instance locally using the version built from ToT. |
| Talk to the Skia Infra team if you have permission issues that need to be sorted out. |
| |
| ``` |
| make run-local-instance |
| ``` |
| |
| To run debugger locally with a custom build of debugger, run the following in the Skia repo. |
| ``` |
| make -C modules/canvaskit with_debugger |
| ``` |
| This should copy the canvaskit.js, canvaskit.wasm, and canvaskit.d.ts to |
| `//debugger-app/wasm_libs/local_build`, assuming you have the `SKIA_INFRA_ROOT` environment |
| variable set. Then, you can run (in this repo) |
| ``` |
| make run-with-custom |
| ``` |
| Do not check in those files that were copied. |
| |
| The application can now be loaded at http://localhost:8000/ |
| |
| The port can be changed via an environment variable, e.g. |
| ``` |
| DEBUGGER_LOCAL_PORT=:8123 make run-with-custom |
| ``` |
| |
| Production deployment |
| --------------------- |
| |
| There is a task_driver that will deploy this application at ToT configured in |
| `infra/bots/task_drivers/push_apps_from_skia_wasm_images/push_apps_from_skia_wasm_images.go` |
| It runs `make bazel_release_ci` to use the freshly built WASM/JS files to build the container. |
| |
| In production, the app is served from go/debugger-app/main.go. |
| See https://skia-review.googlesource.com/c/buildbot/+/334818 for the initial deployment. |