Skip to content

Snowcap - Snowflake infrastructure-as-code. Provision Snowflake resources, Manage RBAC, users, roles, and grants.

License

Notifications You must be signed in to change notification settings

datacoves/snowcap

Repository files navigation

snowcap - Snowflake infrastructure as code

PyPI Python 3.10+ License

Brought to you by Datacoves

Datacoves

Snowcap helps you provision, deploy, and secure resources in Snowflake. Datacoves takes it further: a managed DataOps platform for dbt and Airflow where governance and best practices are built into every layer.

  • Private cloud or SaaS – your data, your choice
  • Managed dbt + Airflow – production-ready from day one
  • In-browser VS Code – onboard developers in minutes
  • Bring your own tools – integrates with your existing stack, no lock-in
  • AI-assisted development – connect your organization's approved LLM (Anthropic, OpenAI, Azure, Gemini, and more)
  • Built-in governance – CI/CD, guardrails, and best practices included

Snowcap is the power tools. Datacoves is the workshop.

Explore the platform →


Why Snowcap?

Snowcap replaces Terraform, Schemachange, or Permifrost with a single, purpose-built tool for Snowflake.

Feature Snowcap Terraform Permifrost
Snowflake-native Yes No Yes
State file No Yes No
YAML + Python Yes HCL only YAML only
Speed 50-90% faster Baseline Medium
All resource types Yes Most Roles/grants only
for_each templating Yes Yes No
Export existing resources Yes Import only No

Key Features

  • Declarative — Generates the right SQL to make your config match your account
  • Comprehensive — 60+ Snowflake resource types supported
  • Flexible — Write configuration in YAML or Python
  • Fast — 50-90% faster than Terraform
  • Migration-friendly — Export existing resources with the CLI

Quick Start

pip install snowcap

Create snowcap.yml:

warehouses:
  - name: analytics
    warehouse_size: xsmall
    auto_suspend: 60

Run:

# Set credentials
export SNOWFLAKE_ACCOUNT=my-account
export SNOWFLAKE_USER=my-user
export SNOWFLAKE_PASSWORD=my-password
export SNOWFLAKE_ROLE=SYSADMIN

# Preview changes
snowcap plan --config snowcap.yml

# Apply changes
snowcap apply --config snowcap.yml

Documentation

Full documentation, examples, and resource reference at datacoves.github.io/snowcap

Support

About

Snowcap - Snowflake infrastructure-as-code. Provision Snowflake resources, Manage RBAC, users, roles, and grants.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 16