From 9de64ebe8a0fe3460c17787d1cf0e6a4ff070837 Mon Sep 17 00:00:00 2001 From: Valentin Rigal Date: Wed, 11 Mar 2026 15:58:43 +0100 Subject: [PATCH 1/2] Doc about the github reporter --- bot/README.md | 24 +++++++++++++++++++++++- docs/phabricator.md | 2 +- docs/publication.md | 4 ++-- 3 files changed, 26 insertions(+), 4 deletions(-) diff --git a/bot/README.md b/bot/README.md index 1fffb7035..3945128e6 100644 --- a/bot/README.md +++ b/bot/README.md @@ -76,6 +76,21 @@ Configuration: This reporter will send detailed information about every **publishable** issue. +## Reporter: Github + +Key `reporter` is `github` + +Configuration: + +- `client_id` : Github App client ID. +- `private_key_pem` : Content of the github App private key. +- `installation_id` : ID of the Github App [installation](https://docs.github.com/en/apps/using-github-apps/installing-your-own-github-app) (integer). +- `analyzers_skipped` : The analyzers that will **not** be published on Phabricator. + +This reporter will send detailed information about every **publishable** issue. + +You can find more details about the Github reporter setup in the [documentation](/docs/github.md). + ## Example configuration ```yaml @@ -88,5 +103,12 @@ common: bot: REPORTERS: - - reporter: phabricator + - reporter: github + client_id: xxxxxxxxxxxxxxxxxxxx + private_key_pem: |- + -----BEGIN RSA PRIVATE KEY----- + XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX + XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX + -----END RSA PRIVATE KEY----- + installation_id: 123456789 ``` diff --git a/docs/phabricator.md b/docs/phabricator.md index 76f5e9885..d1524eff1 100644 --- a/docs/phabricator.md +++ b/docs/phabricator.md @@ -1,6 +1,6 @@ # Phabricator -The main goal of the project is to publish issues on Phabricator, so we need a good integration with their API and interface. +The main goal of the project was to publish issues on Phabricator, so we need a good integration with their API and interface. ## Structure diff --git a/docs/publication.md b/docs/publication.md index 999ab8aad..ce21101ea 100644 --- a/docs/publication.md +++ b/docs/publication.md @@ -23,14 +23,14 @@ worker: Here, the analyzer produces its JSON output as `/builds/worker/clang-tidy.json`, but Taskcluster will expose it on its own public hostname as `https://taskcluster-artifacts.net///public/code-review/clang-tidy.json` -## Publish results on Phabricator +## Publish results Once your task is triggered with the `code-review` attribute, its analysis artifact will be retrieved automatically by the bot. All issues found will be filtered using those basic rules: - if the issue is not in a modifided line of a file in the patch, it will be discarded. - if the issue is in a third party path, it will be discarded. -We have [plans](https://bugzilla.mozilla.org/show_bug.cgi?id=1555721) to remove the first filter, by using a two pass approach and comparing the issues found before vs. after applying the patch. +The bot supports publishing a review to either a Phabricator revision or a Github pull request. ## Troubleshooting From 7e0572ad6339e7d1ad790358632dd6b95cb6c871 Mon Sep 17 00:00:00 2001 From: Valentin Rigal Date: Wed, 11 Mar 2026 16:09:05 +0100 Subject: [PATCH 2/2] Succint documentation about Repository slug --- docs/new_repository.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/new_repository.md b/docs/new_repository.md index 877f2a606..d88100a83 100644 --- a/docs/new_repository.md +++ b/docs/new_repository.md @@ -47,7 +47,7 @@ If you need to edit or create an extra repository, you'll need to use the target It's pretty easy to create a repository on the backend, there are only 2 fields to fill in: -- the **slug** must match your YAML configuration `name` key, and be unique across all repositories on the database, - the **url** must match your YAML configuration `url` key, and also be unique across all repositories on the database. +- the **slug** must match your YAML configuration `name` key, and be unique across all repositories on the database, -![](./new_repository_backend.png) +⚠️ The slug field must match the repository path, replacing `/` by `-` in order for the bot to detect it correctly. For example, the slug for the repository `https://github.com/mozilla/test` would be `mozilla-test`.