SnowDDL
Search
K
Comment on page
🚩

Getting started

System requirements

Hand-on example

It will take about 10 minutes.
1) Install SnowDDL.
pip install snowddl
Do NOT use existing production account with real data to test object management tools.
3) Create administration user for SnowDDL. Replace <password> placeholder with randomly generated password of your choice.
USE ROLE ACCOUNTADMIN;
CREATE ROLE SNOWDDL_ADMIN;
GRANT ROLE SYSADMIN TO ROLE SNOWDDL_ADMIN;
GRANT ROLE SECURITYADMIN TO ROLE SNOWDDL_ADMIN;
CREATE USER SNOWDDL
PASSWORD = '<password>'
DEFAULT_ROLE = SNOWDDL_ADMIN;
GRANT ROLE SNOWDDL_ADMIN TO USER SNOWDDL;
GRANT ROLE SNOWDDL_ADMIN TO ROLE ACCOUNTADMIN;
4) Apply first version of sample config (provided with SnowDDL installation). Replace <account_identifier> placeholder with Snowflake account identifier.
snowddl \
-c sample01_01 \
-a <account_identifier> \
-u snowddl \
-p <password> \
--apply-unsafe \
apply
Check database SNOWDDL_DB in Snowflake account. Check list of warehouses and roles.
5) Apply second version of sample config (provided with SnowDDL installation).
snowddl \
-c sample01_02 \
-a <account_identifier> \
-u snowddl \
-p <password> \
--apply-unsafe \
apply
Check logs. Some objects will be altered, some objects will be dropped.
6) Reset Snowflake account to the original state. All objects created earlier will be dropped.
snowddl \
-c sample01_02 \
-a <account_identifier> \
-u snowddl \
-p <password> \
--apply-unsafe \
--destroy-without-prefix \
destroy

Congratulations!

Now you are ready to create your own config and start experimenting.