This template supports two authentication methods for self-hosted Renovate: Personal Access Token (PAT) and GitHub App. You choose the method via the renovate_auth_method template variable during project generation.
- Go to GitHub Settings → Developer settings → Personal access tokens → Fine-grained tokens → Generate new token
- Set a token name, expiration, and under Repository access select the target repo
- Under Permissions, grant the following:
Repository permissions:
| Permission | Access Level |
|---|---|
| Commit statuses | Read and write |
| Contents | Read and write |
| Dependabot alerts | Read-only |
| Issues | Read and write |
| Pull requests | Read and write |
| Workflows | Read and write |
Organization permissions:
| Permission | Access Level |
|---|---|
| Members | Read-only |
- Click Generate token and copy it
- CLI:
gh secret set RENOVATE_TOKENand paste the token when prompted - Web UI: Go to repo Settings → Secrets and variables → Actions → New repository secret, name it
RENOVATE_TOKEN, and paste the token
Using a GitHub App avoids token expiration issues and provides more granular permission control. Additionally, GitHub automatically marks commits authored by a GitHub App as verified, ensuring your commit history shows these changes as authenticated without requiring additional signing.
- Go to GitHub Settings → Developer settings → GitHub Apps → New GitHub App
- Set a name (e.g.
renovate-<your-org>) and homepage URL - Under Webhook, uncheck Active (not needed)
- Under Permissions, grant the following:
Repository permissions:
| Permission | Access Level |
|---|---|
| Checks | Read and write |
| Commit statuses | Read and write |
| Contents | Read and write |
| Issues | Read and write |
| Pull requests | Read and write |
| Workflows | Read and write |
| Administration | Read-only |
| Dependabot alerts | Read-only |
| Metadata | Read-only |
Organization permissions:
| Permission | Access Level |
|---|---|
| Members | Read-only |
- Under Where can this GitHub App be installed?, select Only on this account
- Click Create GitHub App
- On the App's settings page, scroll to Private keys
- Click Generate a private key — a
.pemfile will be downloaded
- On the App's settings page, click Install App in the sidebar
- Select your account, then choose your installation scope:
- Only select repositories — pick specific repositories to limit Renovate's scope
- All repositories — if you want Renovate to manage all repositories in your account
- Click Install
You need two secrets:
| Secret | Value |
|---|---|
RENOVATE_APP_ID |
The App ID (found on the App's General settings page) |
RENOVATE_APP_PRIVATE_KEY |
The full contents of the .pem private key file |
- CLI:
gh secret set RENOVATE_APP_ID gh secret set RENOVATE_APP_PRIVATE_KEY < path/to/private-key.pem
- Web UI: Go to repo Settings → Secrets and variables → Actions → New repository secret and add each secret