Configuration property fixed at build time - All other configuration properties are overridable at runtime

Configuration property

Type

Default

The numeric application id provided by GitHub.

Optional for tests, but mandatory in production and dev mode.

Environment variable: QUARKUS_GITHUB_APP_APP_ID

string

The GitHub name of the application.

Optional, only used for improving the user experience.

Environment variable: QUARKUS_GITHUB_APP_APP_NAME

string

Read the configuration files from the source repository in case of a fork.

Environment variable: QUARKUS_GITHUB_APP_READ_CONFIG_FILES_FROM_SOURCE_REPOSITORY

boolean

false

The RSA private key.

Optional for tests, but mandatory in production and dev mode.

Environment variable: QUARKUS_GITHUB_APP_PRIVATE_KEY

PrivateKey

The webhook URL path on which the GitHub App route is mounted.

It defaults to the root / but it can be configured to another path such as /github-events to enable deployment alongside other HTTP routes.

Environment variable: QUARKUS_GITHUB_APP_WEBHOOK_URL_PATH

String

/

The webhook secret if defined in the GitHub UI.

Environment variable: QUARKUS_GITHUB_APP_WEBHOOK_SECRET

string

The credentials provider name.

This is the name of the "keyring" containing the GitHub App secrets.

Key names are defined in Credentials.

Environment variable: QUARKUS_GITHUB_APP_CREDENTIALS_PROVIDER

string

The credentials provider bean name.

This is a bean name (as in @Named) of a bean that implements CredentialsProvider. It is used to select the credentials provider bean when multiple exist. This is unnecessary when there is only one credentials provider available.

For Vault, the credentials provider bean name is vault-credentials-provider.

Environment variable: QUARKUS_GITHUB_APP_CREDENTIALS_PROVIDER_NAME

string

The Smee.io proxy URL used when testing locally.

Environment variable: QUARKUS_GITHUB_APP_WEBHOOK_PROXY_URL

string

The GitHub instance endpoint.

Defaults to the public github.com instance.

Environment variable: QUARKUS_GITHUB_APP_INSTANCE_ENDPOINT

String

https://api.github.com

The REST API endpoint.

Defaults to the public github.com instance REST API endpoint.

Environment variable: QUARKUS_GITHUB_APP_REST_API_ENDPOINT

String

${quarkus.github-app.instance-endpoint}

The GraphQL API endpoint.

Defaults to the public github.com instance GraphQL endpoint.

Environment variable: QUARKUS_GITHUB_APP_GRAPHQL_API_ENDPOINT

String

${quarkus.github-app.instance-endpoint}/graphql

A personal access token for use with TokenGitHubClients or when no installation id is provided in the payload.

For standard use cases, you will use the installation client which comes with the installation permissions. It can be injected directly in your method.

However, if your payload comes from a webhook and doesn’t have an installation id, it’s handy to be able to use a client authenticated with a personal access token as the application client permissions are very limited.

This token will be used to authenticate the clients provided by TokenGitHubClients and clients authenticated with this personal access token will be automatically provided when injecting GitHub or DynamicGraphQLClient in your method, when the payload doesn’t provide an installation id.

Environment variable: QUARKUS_GITHUB_APP_PERSONAL_ACCESS_TOKEN

string

A directory in which the payloads are saved.

Environment variable: QUARKUS_GITHUB_APP_DEBUG_PAYLOAD_DIRECTORY

path