RepoSnowflake (Arctic)Snowflake (Arctic)published Jul 10, 2026seen 2w

Snowflake-Labs/openflow-demos

Python

Open original ↗

Captured source

source ↗
published Jul 10, 2026seen 2wcaptured 2whttp 200method plain

Snowflake-Labs/openflow-demos

Description: CoCo plugin for deploying and managing OpenFlow connector demos on Snowflake

Language: Python

License: Apache-2.0

Stars: 0

Forks: 0

Open issues: 0

Created: 2026-07-10T14:14:28Z

Pushed: 2026-08-12T03:07:25Z

Default branch: main

Fork: no

Archived: no

README:

openflow-demos

CoCo plugin for deploying and managing OpenFlow connector demos on Snowflake.

What's Included

| Skill | Description | |-------|-------------| | openflow-gdrive-demo | Google Drive unstructured data pipeline with Cortex Search |

More demos planned (PostgreSQL CDC, etc.).

Prerequisites

Tools

| Tool | Install | |------|---------| | mise | curl https://mise.jdx.dev/install.sh \| sh | | Cortex Code Desktop | CoCo IDE connected to Snowflake |

mise automatically installs Python 3.12 and Snowflake CLI on mise install.

CoCo Plugins

Install the sfutils-plugins CoCo plugin (provides $network-rule and $programmatic-access-token):

cortex plugin install https://github.com/Snowflake-Labs/sfutils-plugins

Snowflake Account

  • OpenFlow enabled (SPCS deployment with at least one ACTIVE runtime)
  • ACCOUNTADMIN or equivalent for initial setup
  • A warehouse (X-Small is sufficient)

Google Cloud (for the gdrive demo)

  • Google Workspace with a Shared Drive
  • GCP project with Drive API enabled
  • Service account with domain-wide delegation (or no-DWD with direct share)
  • Service account JSON key at ~/.snowflake/cortex/secrets/gcp-service-account.json

Sample Data

Sparse-checkout the demo documents:

mise run sample-data

This pulls only sample-data/google-drive-docs/ from the content repo. Copy these to your Google Shared Drive.

Quick Start

# Install tools (Python 3.12, Task) and activate env
mise install
mise trust

# Copy .env.example and fill in your values
cp .env.example .env

# Install Python deps and verify prereqs
mise run setup

# Get sample documents (sparse-checkout)
mise run sample-data

# Open CoCo and deploy
# "Deploy the Google Drive connector"

Install This Plugin

cortex plugin install https://github.com/Snowflake-Labs/openflow-demos

Or for local development:

cortex plugin install /path/to/openflow-demos

Usage

Open CoCo in any directory and use natural language:

Deploy the Google Drive connector

The skill walks you through runtime selection, credential provisioning, and connector deployment interactively.

Other intents:

  • Setup -- "setup openflow", "configure", "initialize"
  • Deploy -- "deploy", "start", "add connector"
  • Cleanup -- "cleanup", "reset", "tear down"
  • Update IP -- "IP changed", "conference wifi", "moved networks"

Architecture

openflow-demos (this plugin)
skills/openflow-gdrive-demo/ -- orchestration logic
|
+-- delegates to $network-rule (sfutils-plugins)
+-- delegates to $programmatic-access-token (sfutils-plugins)
+-- delegates to $openflow (bundled CoCo skill)
|
+-- references content from:
openflow-unstructured-data-pipeline-demo (separate repo)
sample-data/ -- documents to upload to Drive
sql/ -- setup scripts (optional manual path)
docs/ -- getting started guides

Configuration

On first run, the skill creates .sfutils/manifest.toml to track provisioned resources. See .sfutils/manifest.toml.example for the schema.

Config resolution order:

1. .sfutils/manifest.toml (source of truth) 2. Environment variables (fallback) 3. Interactive prompt (if both empty)

License

Apache-2.0