Environment variables

Times Square uses environment variables for configuration. In practice, these variables are typically set as Helm values and 1Password/Vault secrets that are injected into the container as environment variables. See the Phalanx documentation for Times Square for more information on the Phalanx-specific configurations.

SAFIR_NAME

(string, default: “Times Square”) The name of the application. This is used in the metadata endpoint.

SAFIR_PROFILE

(string enum: “production” [default], “development”) The application run profile. Use production to enable JSON structured logging.

SAFIR_LOG_LEVEL

(string enum: “debug”, “info” [default], “warning”, “error”, “critical”) The application log level.

TS_PATH_PREFIX

(string, default: “/times-square”) The path prefix for the Times Square application. This is used to configure the application’s URL.

TS_ENVIRONMENT_URL

(string) The base URL of the Rubin Science Platform environment. This is used for creating URLs to services, such as JupyterHub.

TS_GAFAELFAWR_TOKEN

(secret string) This token is used to make an admin API call to Gafaelfawr to get a token for the user.

TS_DATABASE_URL

(string) The URL of the database to use for Times Square.

TS_DATABASE_PASSWORD

(string) The name of the database to use for Times Square.

TS_REDIS_URL

(string) The URL of the Redis server, used by the worker queue.

TS_ARQ_MODE

(string enum: “production” [default], “test”) The Arq worker mode. The production mode uses the Redis server, while the test mode mocks queue interactions for testing the application.

TS_REDIS_QUEUE_NAME

(string) The name of arq queue the workers process.

TS_GITHUB_APP_ID

(string) The GitHub App ID for Times Square.

TS_GITHUB_WEBHOOK_SECRET

(secret string) The GitHub webhook secret for Times Square.

TS_GITHUB_APP_PRIVATE_KEY

(secret string) The GitHub App private key for Times Square.

TS_ENABLE_GITHUB_APP

(boolean, default: true) Enable the GitHub App integration.

TS_GITHUB_ORGS

(string) A comma-separated list of GitHub organizations that Times Square will sync notebooks from. This is used to filter out incidental GitHub App installations from the general public.