#Server environment reference

#DEBUG

Default: none

Type: string

Description:

Enable debug using the popular debug Npm package. To limit logs to Pmbot, use DEBUG=pmbot.server*.

#PMBOT_JWT_SECRET

Default: none

Type: string

Description:

Secret used to sign and verify JWT tokens. Can be generated with openssl rand 32 -hex.

#PMBOT_JWT_TOKEN_EXPIRATION

Default: 259200 (30 days)

Type: number

Description:

Expiration time (in seconds) of JWT tokens.

#PMBOT_UI_URL

Default: none

Type: string

Description:

URL of the Pmbot UI.

#PMBOT_MONGO_URI

Default: none

Type: string

Description:

URI of a MongoDB instance.

#PMBOT_GITLAB_URL

Default: https://gitlab.com

Type: string

Description:

URL of your Gitlab instance

#PMBOT_GITLAB_CLIENT_ID

Default: none

Type: string

Description:

Gitlab application ID (see here).

#PMBOT_GITLAB_CLIENT_SECRET

Default: none

Type: string

Description:

Gitlab application secret (see here).

#PMBOT_GITLAB_WEBHOOK_SSL_VERIFY

Default: true

Type: boolean

Description:

Whether to enable Gitlab webhook SSL verification for hooks created by Pmbot.

#PMBOT_GITEA_URL

Default: none

Type: string

Description:

URL of your Gitea instance

#PMBOT_GITEA_CLIENT_ID

Default: none

Type: string

Description:

Client ID of an OAuth app registered in your Gitea instance.

#PMBOT_GITEA_CLIENT_SECRET

Default: none

Type: string

Description:

Client secret of an OAuth app registered in your Gitea instance.

#PMBOT_GITHUB_URL

Default: https://github.com

Type: string

Description:

URL of your Github instance.

#PMBOT_GITHUB_CLIENT_ID

Default: none

Type: string

Description:

Client ID of a Github OAuth app.

#PMBOT_GITHUB_CLIENT_SECRET

Default: none

Type: string

Description:

Client secret of a Github OAuth app.

#PMBOT_PORT

Default: 3000 (local development) / 80 (Dockerfile)

Type: number

Description:

Port on which pmbot is listening.

#PMBOT_HOST

Default: none

Type: string

Description:

Host of your pmbot server. For example pmbot.company.com:3000. You can include host and port, but it should not contain protocol as this is handled internally. This value is used for providing correct redirect URL when doing OAuth flows and should

#PMBOT_LOCAL_HOST

Default: PMBOT_HOST

Type: string

Description:

Host that can be used by local docker containers to reach your Pmbot server. This is useful when you are working locally as you've probably set PMBOT_HOST to localhost. When our bot calls Pmbot server from your CI, localhost will point to itself. The solution is to set PMBOT_LOCAL_HOST to host.docker.internal (OS X) or to your IP.

#PMBOT_MIGRATE_ROLLBACK

Default: false

Type: boolean

Description:

Forces the server to rollback the last migration, then exit. Use this when you're trying to downgrade.

#PMBOT_SYNC_INTERVAL

Default: 1800 (30 minutes)

Type: number

Description:

How often (in seconds) user repositories should be synchronized.

#PMBOT_ORGS

Default: none

Type: string

Description:

A comma separated list of organization names (not ID !) to which login and repos should be limited. For example:

PMBOT_ORGS=octocat

#PMBOT_SSL_KEY

Default: none

Type: string

Description:

An SSL private key in PEM format. See SSL.

#PMBOT_SSL_CERT

Default: none

Type: string

Description:

An SSL certificate in PEM format. See SSL.

#PMBOT_REQUIRE_LOGIN_FOR_PUBLIC_REPOS

Default: true

Type: boolean

Description:

When set to false, public repositories of your Git server will also be public in Pmbot. This grants guests read-only access to pipelines, jobs and logs.

#PMBOT_REFRESH_TOKEN_TASK_PERIOD

Default: 10

Type: number

Description:

How often (in seconds) to check for tokens that need to be refreshed.

Default: null

Type: string

Description:

Allows you to set the SameSite property for cookies defined by the server. Useful when your Pmbot server has a different host or URL than your UI.

Default: false

Type: boolean

Description:

Allows you to set the Secure property for cookies defined by the server. Some browsers, like Chrome, require it to be true to use cookies for cross site requests (which implies you need a secure backend).

#PMBOT_LICENSE

Default: none

Type: string

Description:

The content of your Pmbot license file.

#PMBOT_DRONE_URL

Default: none

Type: string

Description:

URL of your Drone CI server.

#PMBOTSCHEDULEMIN_INTERVAL

Default: 300 (5 minutes)

Type: number

Description:

The minimum amount of time (in seconds) between two updates of a given schedule. For example, if your schedule defines an update ever minute, in practice you will get an update every PMBOT_SCHEDULE_MIN_INTERVAL minutes.

#PMBOTDEFAULTBRANCH_FALLBACK

Default: master

Type: string

Description:

When the server cannot determine the default branch of a repository, it uses this fallback.

#PMBOTREMOVESCHEDULESWHENDISABLE_REPO

Default: false

Type: boolean

Description:

Whether schedules of a repo should be removed when disabling it.

#PMBOTUPDATESCHEDULER_INTERVAL

Default: 5 (seconds)

Type: string

Description:

The interval (in seconds) between each time the server checks for expired schedules.

#PMBOTUPDATETIMEOUT

Default: 86400 (1 day)

Type: number

Description:

When an update has started, it will be locked after this amount of time (in seconds). The bot will not be able to change its status or write to it.

#PMBOTUPDATETIMEOUTAFTEREND

Default: 300 (5 minutes)

Type: number

Description:

When an update has finished, the bot still has this amount of time (in seconds) to finish all its calls the server.