Environment Variables

Environment variables for running CHT Sync

There are three groups of environment variables. One for Postgres, one for CouchDB and one for DBT. These are found in the .env file and the values.yaml file for docker and Kubernetes respectively.

  1. POSTGRES_: Used by PostgreSQL to establish the PostgreSQL database to synchronize CouchDB data to. They define the schema and table names to store the CouchDB data, as well as where the tables and views for the models defined in CHT_PIPELINE_BRANCH_URL will be created.
  2. COUCHDB_: Used by CouchDB to define the CouchDB instance to sync with. With COUCHDB_DBS, we can specify a list of databases to sync.
  3. DBT_: Used by dbt to pull from the remote git repository, declare sync frequency and concurrency.
NameDefaultDescription
COMPOSE_PROJECT_NAMEpipeline(Optional) Docker Compose name
POSTGRES_USERpostgresUsername of the PostgreSQL database
POSTGRES_PASSWORDpostgresPassword of the PostgreSQL database
POSTGRES_DBcht_syncPostgreSQL database
POSTGRES_SCHEMAv1PostgreSQL schema
POSTGRES_TABLEcouchdbPostgreSQL table where the CouchDB data is copied
POSTGRES_HOSTpostgresPostgreSQL instance
POSTGRES_PORT5432PostgreSQL port
CHT_PIPELINE_BRANCH_URL"https://github.com/medic/cht-pipeline.git#main"cht-pipeline branch containing the dbt models
DATAEMON_INTERVAL5Interval (in seconds) for looking for new changes in the CouchDB data
COUCHDB_USERmedicUsername of the CouchDB instance
COUCHDB_PASSWORDpasswordPassword of the CouchDB instance
COUCHDB_DBS"medic"Comma separated list of databases to sync e.g "medic, medic_sentinel"
COUCHDB_HOSTcouchdbHost of the CouchDB instance
COUCHDB_PORT5984Port of the CouchDB instance
COUCHDB_SECUREfalseDoes the connection to CouchDB use HTTPS?
DBT_THREAD_COUNT1Number of threads per DBT process
DBT_BATCH_SIZE0Batch size for batched incremental runs
DBT_LOCAL_PATHWhen running DBT locally for development, the path to the models directory on the host
DBT_SELECTOR''If using separate DBT processes, the select condition to select a subset of the models for a single dbt process.