mirror of
https://github.com/woodpecker-ci/woodpecker.git
synced 2025-06-05 08:58:50 +00:00
Update GH app installation instructions (#2472)
- Slimify - Add required permissions (missing so far) - More detailed instructions on app settings - Align env var options to style used in k8s section (UL instead of headers) --------- Co-authored-by: Lauris BH <lauris@nix.lv>
This commit is contained in:
parent
1653a8eadf
commit
6d86ec7fe7
1 changed files with 54 additions and 53 deletions
|
@ -1,72 +1,73 @@
|
||||||
# GitHub
|
# GitHub
|
||||||
|
|
||||||
Woodpecker comes with built-in support for GitHub and GitHub Enterprise. To enable GitHub you should configure the Woodpecker server using the following environment variables:
|
Woodpecker comes with built-in support for GitHub and GitHub Enterprise.
|
||||||
|
To use Woodpecker with GitHub the following environment variables should be set for the server component:
|
||||||
|
|
||||||
```diff
|
```sh
|
||||||
# docker-compose.yml
|
WOODPECKER_GITHUB=true
|
||||||
version: '3'
|
WOODPECKER_GITHUB_CLIENT=YOUR_GITHUB_CLIENT_ID
|
||||||
|
WOODPECKER_GITHUB_SECRET=YOUR_GITHUB_CLIENT_SECRET
|
||||||
services:
|
|
||||||
woodpecker-server:
|
|
||||||
[...]
|
|
||||||
environment:
|
|
||||||
- [...]
|
|
||||||
+ - WOODPECKER_GITHUB=true
|
|
||||||
+ - WOODPECKER_GITHUB_CLIENT=${WOODPECKER_GITHUB_CLIENT}
|
|
||||||
+ - WOODPECKER_GITHUB_SECRET=${WOODPECKER_GITHUB_SECRET}
|
|
||||||
|
|
||||||
woodpecker-agent:
|
|
||||||
[...]
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Registration
|
You will get these values from GitHub when you register your application.
|
||||||
|
To do so, go to Settings -> Developer Settings -> GitHub Apps -> New GitHub App.
|
||||||
|
|
||||||
Register your application with GitHub to create your client id and secret. It is very important that the authorization callback URL matches your http(s) scheme and hostname exactly with `<scheme>://<host>/authorize` as the path.
|
## App Settings
|
||||||
|
|
||||||
Please use this screenshot for reference:
|
- Name: An arbitrary name for your App
|
||||||
|
- Homepage URL: The URL of your Woodpecker instance
|
||||||
|
- Callback URL: `https://<your-woodpecker-instance>/authorize`
|
||||||
|
- Leave "Request user authorization (OAuth) during installation" and "Enable Device Flow" unchecked
|
||||||
|
- Leave "Webhook" and "Post Installation" fields empty
|
||||||
|
- (optional) Upload the Woodpecker Logo: https://avatars.githubusercontent.com/u/84780935?s=200&v=4
|
||||||
|
|
||||||

|
## App Permissions
|
||||||
|
|
||||||
## Configuration
|
The app must be granted the following permissions (under App Settings -> Permissions):
|
||||||
|
|
||||||
|
Repository:
|
||||||
|
|
||||||
|
- Commit statuses: Read & write
|
||||||
|
- Contents: Read & write
|
||||||
|
- Deployments: Read & write
|
||||||
|
- Metadata: Read-only
|
||||||
|
- Pull requests: Read & write
|
||||||
|
- Secrets: Read & write
|
||||||
|
- Webhooks: Read & write
|
||||||
|
|
||||||
|
Organization:
|
||||||
|
|
||||||
|
- Members: Read-only
|
||||||
|
|
||||||
|
Account:
|
||||||
|
|
||||||
|
- Email addresses: Read-only
|
||||||
|
|
||||||
|
## Client Secret Creation
|
||||||
|
|
||||||
|
After your App has been created, you can generate a client secret.
|
||||||
|
Use this one for the `WOODPECKER_GITHUB_SECRET` environment variable.
|
||||||
|
|
||||||
|
## Installing the app
|
||||||
|
|
||||||
|
In the app settings, click on "Install App" and give the app permissions to the repositories you want to use with Woodpecker.
|
||||||
|
|
||||||
|
## All GitHub Configuration Options
|
||||||
|
|
||||||
This is a full list of configuration options. Please note that many of these options use default configuration values that should work for the majority of installations.
|
This is a full list of configuration options. Please note that many of these options use default configuration values that should work for the majority of installations.
|
||||||
|
|
||||||
### `WOODPECKER_GITHUB`
|
- `WOODPECKER_GITHUB` - Enables the GitHub driver (Default: `false`)
|
||||||
> Default: `false`
|
|
||||||
|
|
||||||
Enables the GitHub driver.
|
- `WOODPECKER_GITHUB_URL` - Configures the GitHub server address (Default: `https://github.com`)
|
||||||
|
|
||||||
### `WOODPECKER_GITHUB_URL`
|
- `WOODPECKER_GITHUB_CLIENT` - Configures the GitHub OAuth client id to authorize access (Default: empty)
|
||||||
> Default: `https://github.com`
|
|
||||||
|
|
||||||
Configures the GitHub server address.
|
- `WOODPECKER_GITHUB_CLIENT_FILE` - Read the value for `WOODPECKER_GITHUB_CLIENT` from the specified filepath (Default: empty)
|
||||||
|
|
||||||
### `WOODPECKER_GITHUB_CLIENT`
|
- `WOODPECKER_GITHUB_SECRET` - Configures the GitHub OAuth client secret. This is used to authorize access. (Default: empty)
|
||||||
> Default: empty
|
|
||||||
|
|
||||||
Configures the GitHub OAuth client id. This is used to authorize access.
|
- `WOODPECKER_GITHUB_SECRET_FILE` - Read the value for `WOODPECKER_GITHUB_SECRET` from the specified filepath (Default: empty)
|
||||||
|
|
||||||
### `WOODPECKER_GITHUB_CLIENT_FILE`
|
`WOODPECKER_GITHUB_MERGE_REF` - (Default: `true`)
|
||||||
> Default: empty
|
|
||||||
|
|
||||||
Read the value for `WOODPECKER_GITHUB_CLIENT` from the specified filepath
|
- `WOODPECKER_GITHUB_SKIP_VERIFY` - Configure if SSL verification should be skipped (Default: `false`)
|
||||||
|
|
||||||
### `WOODPECKER_GITHUB_SECRET`
|
|
||||||
> Default: empty
|
|
||||||
|
|
||||||
Configures the GitHub OAuth client secret. This is used to authorize access.
|
|
||||||
|
|
||||||
### `WOODPECKER_GITHUB_SECRET_FILE`
|
|
||||||
> Default: empty
|
|
||||||
|
|
||||||
Read the value for `WOODPECKER_GITHUB_SECRET` from the specified filepath
|
|
||||||
|
|
||||||
### `WOODPECKER_GITHUB_MERGE_REF`
|
|
||||||
> Default: `true`
|
|
||||||
|
|
||||||
TODO
|
|
||||||
|
|
||||||
### `WOODPECKER_GITHUB_SKIP_VERIFY`
|
|
||||||
> Default: `false`
|
|
||||||
|
|
||||||
Configure if SSL verification should be skipped.
|
|
||||||
|
|
Loading…
Reference in a new issue