CLI Overview

Why use Coalesce CLI?

coa enables automated CI/CD workflows for Coalesce projects. Made for those with stringent on-premise data requirements, the CLI tool coa eliminates using the Coalesce Cloud backend to route Snowflake SQL commands and data and, instead, connects directly to Snowflake from your local environment.


Refresh is also available via the REST API

Coalesce also offers a rest API for some of the functionality provided by coa, the CLI tool. The rest API can be a useful option for those that do not want to maintain on-premise infrastructure, but it does connect directly to your Snowflake environment from the Coalesce Cloud backend.

The CLI and SaaS app can be used in tandem. For example, users may prefer our SaaS app for development and switch to our CLI for production, or choose to deploy using the GUI and refresh the data warehouse via the CLI.


Coalesce CLI uses an outbound connection to Coalesce metadata for tracking environment state and execution results.

How does Coalesce CLI work?

First, the user commits their Coalesce project to a Git repository using the SaaS app.

This git repository is then cloned to a local machine on which coa is installed.

The user then executes their code locally with coa commands, which read the files from the locally cloned git commit and deploy the metadata configuration to an environment.

The deploy saves the metadata configuration to the environment, meaning that future refreshes use the current state of the data warehouse stored in the metadata.

Typically, your team will run the refresh every hour, only issuing a deploy when a structural change to the data warehouse is needed.