Skip to content

Releases: marcelinojackson-org/Snowflake.RunSQLAction

v1.1.2 – CSV output in logs

Choose a tag to compare

@marcelino-jackson marcelino-jackson released this 10 Nov 21:14

Highlights

  • When persist-results is false (the default), the action now prints the rowset directly to the logs as CSV. This makes it easy to copy/paste or download results without creating artifacts.
  • Persisted runs still write the full CSV + metadata files for artifact upload.

Changes

  • Always emit CSV to stdout for non-persisted runs (src/snowflake-runsql.ts).
  • README clarifies that logs show CSV when persistence is disabled.

No input/output contract changes—just better console output for the default scenario.

Snowflake.RunSQLAction v1.1.1

Choose a tag to compare

@marcelino-jackson marcelino-jackson released this 10 Nov 04:41

Snowflake.RunSQLAction v1.1.1

Fixes

  • Ensure persisted-result directories are recreated inside the configured path rather than deleting the entire RUNNER_TEMP folder (which broke GitHub’s file-command outputs).

No other behavior changes—this patch just makes the new CSV/metadata feature safe on hosted runners.

Snowflake.RunSQLAction v1.1.0

Choose a tag to compare

@marcelino-jackson marcelino-jackson released this 10 Nov 04:26

Snowflake.RunSQLAction v1.1.0

Highlights

  • Mandatory SQL input: the action now fails fast if neither the sql input nor RUN_SQL_STATEMENT is provided.
  • Expanded row cap: return-rows still defaults to 100 but can now go up to 10 000, with server-side LIMIT injection when possible.
  • CSV artifacts: set persist-results: true (or RUN_SQL_PERSIST_RESULTS=true) to capture the full rowset as CSV plus a metadata JSON file (filenames append the Snowflake query-id suffix). Directories are recreated each run so old files don’t pile up.
  • Documentation refresh: README now follows a guided “steps” style with both basic and advanced usage examples.

Changelog

  • require SQL input / env setting before execution
  • bump maximum rows printed to 10 000
  • add CSV + metadata persistence with query-id suffixes & clean temp directories
  • expose result-file and result-metadata-file outputs
  • improve README with explicit input tables and advanced example

Snowflake RunSQL Action

Choose a tag to compare

@marcelino-jackson marcelino-jackson released this 09 Nov 17:40

Summary

A lightweight GitHub Action that connects to Snowflake using your provided credentials, runs one SQL statement, and prints the full JSON result (rows, query ID, session ID, and context). Perfect for quick smoke tests or automating Snowflake admin tasks without wiring up a full client.
It also sets the SNOWFLAKE_* values as current with the USE sql command after successful connection

Usage

  • uses: marcelinojackson-org/Snowflake.RunSQLAction@v1
    with:
    sql: "select current_user() as current_user"
    env:
    SNOWFLAKE_ACCOUNT: ${{ vars.SNOWFLAKE_ACCOUNT }}
    SNOWFLAKE_ACCOUNT_URL: ${{ vars.SNOWFLAKE_ACCOUNT_URL }}
    SNOWFLAKE_USER: ${{ vars.SNOWFLAKE_USER }}
    SNOWFLAKE_PASSWORD: ${{ secrets.SNOWFLAKE_PASSWORD }} ## OR ${{ secrets.SNOWFLAKE_PAT }}
    SNOWFLAKE_ROLE: ${{ vars.SNOWFLAKE_ROLE }}
    SNOWFLAKE_WAREHOUSE: ${{ vars.SNOWFLAKE_WAREHOUSE }}
    SNOWFLAKE_DATABASE: ${{ vars.SNOWFLAKE_DATABASE }}
    SNOWFLAKE_SCHEMA: ${{ vars.SNOWFLAKE_SCHEMA }}

Snowflake RunSQL Action

Choose a tag to compare

@marcelino-jackson marcelino-jackson released this 09 Nov 17:12

Execute a single SQL statement against Snowflake and print JSON results.

A lightweight GitHub Action that connects to Snowflake using your provided credentials, runs one SQL statement, and prints the full JSON result (rows, query ID, session ID, and context). Perfect for quick smoke tests or automating Snowflake admin tasks without wiring up a full client.

Usage

  • uses: marcelinojackson-org/Snowflake.RunSQLAction@v1
    with:
    sql: "select current_user() as current_user"
    env:
    SNOWFLAKE_ACCOUNT: ${{ secrets.SNOWFLAKE_ACCOUNT }}
    SNOWFLAKE_ACCOUNT_URL: ${{ secrets.SNOWFLAKE_ACCOUNT_URL }}
    SNOWFLAKE_USER: ${{ secrets.SNOWFLAKE_USER }}
    SNOWFLAKE_PASSWORD: ${{ secrets.SNOWFLAKE_PASSWORD }} or ${{ secrets.SNOWFLAKE_PAT }}
    SNOWFLAKE_ROLE: ${{ secrets.SNOWFLAKE_ROLE }}
    SNOWFLAKE_WAREHOUSE: ${{ secrets.SNOWFLAKE_WAREHOUSE }}
    SNOWFLAKE_DATABASE: ${{ secrets.SNOWFLAKE_DATABASE }}
    SNOWFLAKE_SCHEMA: ${{ secrets.SNOWFLAKE_SCHEMA }}