Skip to main content
Configuration Cube is configured using a combination of environment variables and configuration files.

Configuration file

The main configuration file is cube.py (or cube.js):
from cube import config

@config('context_to_app_id')
def context_to_app_id(ctx: dict) -> str:
    return ctx['securityContext'].get('team', 'default')

@config('scheduled_refresh_contexts')
def scheduled_refresh_contexts() -> list:
    return [{'securityContext': {'team': 'default'}}]

Environment variables

All Cube environment variables start with CUBEJS_:
Never commit environment variables containing credentials to version control.
CUBEJS_DB_TYPE=postgres
CUBEJS_DB_HOST=localhost
CUBEJS_DB_PORT=5432
CUBEJS_DB_NAME=my_database
CUBEJS_DB_USER=cube
CUBEJS_DB_PASS=secret
CUBEJS_API_SECRET=your-api-secret

Data sources

Cube supports 30+ data sources. See the data sources page for the full list and connection details.