Environments
Environments are used for deploying your data pipeline to Snowflake environments. They track the state of Coalesce objects and manage efficient deployment strategies. You can configure your Workspace for working and Environments to actually deploy your data pipelines where you want.
Deploy and refresh jobs are triggered for individual environments. Once an environment has been deployed, it can be refreshed using the API or CLI.
Coalesce allows you to configure both your environment and workspace. This allows you to complete your development in a workspace and then deploy to any environment you want. For example, you can deploy to your production environment or QA environment with each one having different storage locations, storage mapping, parameters, and other options.
- No Coalesce development can be completed directly against an Environment.
- Objects are created in a steady state via a defined Git branch and commit.
- Data loading and refresh is kicked off on demand, via a schedule or designated trigger, and/or via an automated process, like a CI/CD pipeline.
- When a change is made to an object, for example, adding or dropping a column, renaming a column, the object is ALTERed instead of dropped and recreated.
- Deleted objects are cleaned up (DROPPED) in the backend Snowflake instance.
You must have your Environment configured for deploy and refresh.
In this guide, you'll learn which settings are available to configure.
- In your Workspace, go to Build Settings > Environments. Every Coalesce workspace comes with a DEV environment.
- Select the Environment you want to configure.
- Settings - Includes general account information such as the Environment name and the Snowflake connection URL. Take note of the Environment ID. You'll use this when making API requests to see information about the deployment.
- User Credentials - Configure how you want to connect to Snowflake. If you want to use OAuth (recommended), you'll also need to add your OAuth Settings. Learn more about Connecting to Snowflake.
- Storage Mappings - To deploy or refresh your environment, you need to have your Storage Mappings setup. Storage Mappings are represent the physical locations in Snowflake. This is where your data pipeline will deploy. Learn more about Storage Mappings.
- Parameters - Parameters are defined as a JSON blob set by the user that can be accessed in the metadata during template rendering. Learn more about Parameters.
- OAuth Settings - If you're using OAuth to connect to Snowflake, you'll need to configure OAuth here.