diff --git a/docs/github.md b/docs/github.md index a842fa7c..4ae5d0c3 100644 --- a/docs/github.md +++ b/docs/github.md @@ -30,3 +30,22 @@ Now, every time you push changes to GitHub, Traduttore will get notified and the **Note:** The `TRADUTTORE_GITHUB_SYNC_SECRET` constant needs to be defined in your `wp-config.php` file to enable webhooks. Use the secret from step 5 for this. Check out the [Configuration](configuration.md) section for a list of possible constants. + +## GitHub App + +As an alternative to configuring webhooks for each repository individually, you can create a GitHub App. This way the app automatically has access to all repositories (or the ones you select during installation), removing the need to set up webhooks per repository. + +### Creating the App + +1. Go to `https://github.com/organizations//settings/apps/new` (or `https://github.com/settings/apps/new` for a personal account). +2. Enter a name and description for the app. +3. In the **Webhook** section, check the "Active" checkbox. +4. Set `https://.com/wp-json/traduttore/v1/incoming-webhook` as the webhook URL. +5. Enter a webhook secret. Use the same value as the `TRADUTTORE_GITHUB_SYNC_SECRET` constant in your `wp-config.php`. +6. In the **Repository permissions** section, set "Contents" to "Read-only". +7. In the **Subscribe to events** section, check the "Push" checkbox. +8. Under "Where can this GitHub App be installed?", choose "Only on this account" for a private app or "Any account" if you want others to install it. + +### Installing the App + +Once the app is created, install it on your account or organization. During installation you can grant access to all repositories or select specific ones. After installation, Traduttore will automatically receive push events for the configured repositories without any additional webhook setup.