Skip to content

Files

Latest commit

 

History

History
126 lines (83 loc) · 4.27 KB

ENVIRONMENT.md

File metadata and controls

126 lines (83 loc) · 4.27 KB

Environment Variables

This document describes the environment variables used by browser.

Name Usage Description
DSN required the PostgreSQL connection string
GITHUB_APP_ID required the ID of the GitHub application used to read repository content
GITHUB_APP_PRIVATEKEY required the private key for the GitHub application used to read repository content
GITHUB_CLIENT_ID required the client ID of the GitHub application used to read repository content
GITHUB_CLIENT_SECRET required the client secret for the GitHub application used to read repository content
GITHUB_HOOK_SECRET required the secret used to verify GitHub web-hook requests are genuine
GITHUB_URL optional the base URL of the GitHub API

Tip

If an environment variable is set to an empty value, browser behaves as if that variable is left undefined.

DSN

the PostgreSQL connection string

The DSN variable MUST NOT be left undefined.

export DSN=foo # (non-normative)

GITHUB_APP_ID

the ID of the GitHub application used to read repository content

The GITHUB_APP_ID variable's value MUST be 1 or greater.

export GITHUB_APP_ID=1                    # (non-normative) the minimum accepted value
export GITHUB_APP_ID=8301034833169298432  # (non-normative)
export GITHUB_APP_ID=11068046444225730560 # (non-normative)
Unsigned integer syntax

Unsigned integers can only be specified using decimal (base-10) notation. A leading sign (+ or -) is not supported and MUST NOT be specified.

Internally, the GITHUB_APP_ID variable is represented using an unsigned 64-bit integer type (uint); any value that overflows this data-type is invalid.

GITHUB_APP_PRIVATEKEY

the private key for the GitHub application used to read repository content

The GITHUB_APP_PRIVATEKEY variable MUST NOT be left undefined.

⚠️ This variable is sensitive; its value may contain private information.

GITHUB_CLIENT_ID

the client ID of the GitHub application used to read repository content

The GITHUB_CLIENT_ID variable MUST NOT be left undefined.

export GITHUB_CLIENT_ID=foo # (non-normative)

GITHUB_CLIENT_SECRET

the client secret for the GitHub application used to read repository content

The GITHUB_CLIENT_SECRET variable MUST NOT be left undefined.

⚠️ This variable is sensitive; its value may contain private information.

GITHUB_HOOK_SECRET

the secret used to verify GitHub web-hook requests are genuine

The GITHUB_HOOK_SECRET variable MUST NOT be left undefined.

⚠️ This variable is sensitive; its value may contain private information.

GITHUB_URL

the base URL of the GitHub API

The GITHUB_URL variable MAY be left undefined. Otherwise, the value MUST be a fully-qualified URL.

export GITHUB_URL=https://example.org/path # (non-normative) a typical URL for a web page
URL syntax

A fully-qualified URL includes both a scheme (protocol) and a hostname. URLs are not necessarily web addresses; https://example.org and mailto:contact@example.org are both examples of fully-qualified URLs.


Note

This document only describes environment variables declared using Ferrite. browser may consume other undocumented environment variables.

Important

Some of the example values given in this document are non-normative. Although these values are syntactically valid, they may not be meaningful to browser.