| name | snowflake-deploy-integration |
| description | Deploy Snowflake-powered applications with proper connection management and secrets.
Use when deploying apps that query Snowflake, configuring connection pools
for serverless/container platforms, or managing Snowflake credentials in production.
Trigger with phrases like "deploy snowflake", "snowflake serverless",
"snowflake production deploy", "snowflake Cloud Run", "snowflake Lambda".
|
| allowed-tools | Read, Write, Edit, Bash(gcloud:*), Bash(aws:*), Bash(docker:*) |
| version | 1.5.0 |
| license | MIT |
| author | Jeremy Longshore <jeremy@intentsolutions.io> |
| tags | ["saas","data-warehouse","analytics","snowflake"] |
| compatibility | Designed for Claude Code |
Snowflake Deploy Integration
Overview
Deploy applications that connect to Snowflake on serverless platforms, containers, and VMs with proper connection lifecycle management.
Prerequisites
- Snowflake service account with key pair auth
- Platform CLI installed (gcloud, aws, docker)
- Application tested against staging Snowflake
Instructions
Step 1: Connection Management for Serverless
import snowflake from 'snowflake-sdk';
let cachedConnection: snowflake.Connection | null = null;
export async function getConnection(): Promise<snowflake.Connection> {
if (cachedConnection?.isUp()) {
return cachedConnection;
}
const conn = snowflake.createConnection({
account: process.env.SNOWFLAKE_ACCOUNT!,
username: process.env.SNOWFLAKE_USER!,
authenticator: 'SNOWFLAKE_JWT',
privateKey: process.env.SNOWFLAKE_PRIVATE_KEY!,
warehouse: process.env.SNOWFLAKE_WAREHOUSE!,
database: process.env.SNOWFLAKE_DATABASE!,
: process.. || ,
: ,
});
<>( {
conn.( (err ? (err) : ()));
});
cachedConnection = conn;
conn;
}