Skip to content

Environment Strategy

In general make sure to set up your model as generic as possible if you plan on using the standard CLOE multi environment strategy. Don't use environment references in your model explicitly (e.g. DEV_DATABASE). Instead use variables if environment indicators cannot be removed and remove them wherever possible.

CLOE development should always take place in DEV. Hotfixes can be applied to other environment but should be immediately mirrored in DEV. The current environment is determined by the "CLOE_MODEL_ENVIRONMENT" environment variable. If that variable is not found CLOE will assume DEV.

CLOE models for different environments are saved in separate git branches, one branch per environment. In general, changes should only be made to the DEV branch. Changes can then be propagated to other environments by merging the priors environment branch into the branch of the next environment. Environment branches are long-lived and should not be deleted on merge (e.g.DEV/ACC/QS/PRD).

environments_standard_git_flow

Some tools/model objects offer functionality to make it easier to set up different environments(e.g. snowflake crawler or table metadata object). See the tools/objects subpage for information on that.

Each environment branch should have its own set of deployment pipelines.