Skip to content

DOC-339 (sept 8 launch hotfix): Rewrite Snowflake Getting Started to mirror AWS v2 and default to lstk - #878

Merged
quetzalliwrites merged 4 commits into
mainfrom
doc-339-docs-snowflake-getting-started-v2-also-making-lstk-default
Sep 7, 2026
Merged

DOC-339 (sept 8 launch hotfix): Rewrite Snowflake Getting Started to mirror AWS v2 and default to lstk#878
quetzalliwrites merged 4 commits into
mainfrom
doc-339-docs-snowflake-getting-started-v2-also-making-lstk-default

Conversation

@quetzalliwrites

Copy link
Copy Markdown
Collaborator

Summary

Mirrors the AWS Getting Started rewrite (DOC-12, #606) information architecture for Snowflake: Overview, Installation, Local Development, CI Integration, AI & Agent Workflows, Auth Token, FAQ.

  • Overview and Installation are split into separate pages (previously combined into one file titled "Installation" with no landing page). Overview is a new SectionCards landing page; Installation leads with lstk (lstk start --type snowflake), with Docker Compose/CLI as secondary paths.
  • Quickstart is decoupled and removed. Its content is folded into a new Local Development page with an explicit, unbroken walkthrough: start the emulator via lstk → connect the Snowflake CLI to a localstack connection profile → run a first query → inspect results in the Web App → clean up. Adds a 301 redirect from the old quickstart URL.
  • CI Integration is a new page with lstk-based CI snippets.
  • AI & Agent Workflows is a new top-level page centered on the MCP server's localstack-snowflake-client tool.
  • Auth Token and FAQ are restructured to match the AWS pattern while keeping Snowflake-specific content (session verify endpoint, SQL API/hostname/image-tag FAQs) that has no AWS equivalent.
  • Fixed three tutorial pages whose prerequisite links pointed at the now-split /snowflake/getting-started/ page.

Where this deliberately doesn't mirror AWS 1:1

  • No lstk wrapper for the Snowflake CLI. Agents/users run snow directly against its own localstack connection profile — there's no lstk snow proxy the way there's lstk aws/lstk terraform/lstk cdk.
  • No per-provider CI guide fan-out. AWS links to dedicated /aws/ci-pipelines/<provider>/ pages; Snowflake only has one consolidated CI page, so CI Integration links there instead of inventing pages that don't exist.
  • No claim about Snowflake-specific LocalStack Skills coverage — couldn't verify one way or the other, so the AI & Agent Workflows page omits that bullet rather than guessing.
  • Did not reuse AWS's LocalStack/setup-localstack@main GitHub Action example for the CI snippets, since its Snowflake support is unverified; used a plain lstk-based step instead.

Linear: https://linear.app/localstack/issue/DOC-339/docs-snowflake-getting-started-v2-also-making-lstk-default-cli

Test plan

  • astro build completes successfully (403 pages)
  • starlight-links-validator reports all internal links valid
  • No "Quickstart" naming remains anywhere in the Snowflake Getting Started section
  • All CLI examples in the 7 nav pages use lstk
  • Nav titles/order verified: Overview(1), Installation(2), Local Development(3), CI Integration(4), AI & Agent Workflows(5), Auth Token(6), FAQ(7)

…lt to lstk

Mirrors the AWS Getting Started rewrite (DOC-12) information architecture:
Overview, Installation, Local Development, CI Integration, AI & Agent
Workflows, Auth Token, FAQ.

- Overview and Installation are split into separate pages; Overview
  is a new SectionCards landing page, Installation leads with lstk
  (lstk start --type snowflake), with Docker Compose/CLI as secondary
  paths.
- Quickstart is decoupled and removed; its content is folded into a
  new Local Development page with an explicit, unbroken walkthrough:
  start the emulator via lstk, connect the Snowflake CLI to a
  `localstack` connection profile, run a first query, inspect results
  in the Web App, then clean up. Adds a redirect from the old
  quickstart URL.
- CI Integration is a new page with lstk-based CI snippets, and AI &
  Agent Workflows is a new top-level page centered on the MCP
  server's localstack-snowflake-client tool.
- Auth Token and FAQ are restructured to match the AWS pattern while
  keeping Snowflake-specific content (session verify endpoint, SQL
  API/hostname/image-tag FAQs) that has no AWS equivalent.
- Fixed three tutorial pages whose prerequisite links pointed at the
  now-split /snowflake/getting-started/ page.

Deviates from a literal AWS mirror where the underlying product
differs: no lstk wrapper for the Snowflake CLI (agents run `snow`
directly against its own connection profile), no per-provider CI
guide fan-out (links to the existing consolidated CI integration
page instead), and no claim about Snowflake-specific LocalStack
Skills coverage since it could not be verified.
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Aug 20, 2026

Copy link
Copy Markdown

Deploying localstack-docs with  Cloudflare Pages  Cloudflare Pages

Latest commit: e02fa72
Status: ✅  Deploy successful!
Preview URL: https://9190d230.localstack-docs.pages.dev
Branch Preview URL: https://doc-339-docs-snowflake-getti.localstack-docs.pages.dev

View logs

@quetzalliwrites quetzalliwrites self-assigned this Aug 20, 2026
@quetzalliwrites
quetzalliwrites marked this pull request as draft August 20, 2026 11:35
@quetzalliwrites

Copy link
Copy Markdown
Collaborator Author

Moving this to draft mode, still want to test and refine it further before going to review round.

Small wording tweaks across Overview, Installation, and AI & Agent
Workflows for clarity and consistency.
@quetzalliwrites
quetzalliwrites marked this pull request as ready for review August 25, 2026 18:24

@remotesynth remotesynth left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note that I did a read of the pages and they look good but I not get to run through the steps to confirm.

@mmaureenliu mmaureenliu left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the wonderful work! Mostly looks great to me, with some modifications suggested:

  • mainly use lstk start not lstk start --type snowflake
  • I want Peter and Przemek to review some tech content for accuracy
  • I assume the AI workflow works, but would appreciate acknowledgement from someone who's tested it (I don't have time to test it in the next few days)

Comment thread src/content/docs/snowflake/tutorials/credit-scoring-with-localstack-snowpark.md Outdated
Comment thread src/content/docs/snowflake/getting-started/index.mdx Outdated
Comment thread src/content/docs/snowflake/getting-started/installation.mdx Outdated
Comment thread src/content/docs/snowflake/getting-started/installation.mdx Outdated
Comment thread src/content/docs/snowflake/getting-started/installation.mdx Outdated
Comment thread src/content/docs/snowflake/getting-started/local-development.mdx
Comment thread src/content/docs/snowflake/getting-started/ci-cd.mdx Outdated
Comment thread src/content/docs/snowflake/getting-started/auth-token.mdx
Comment thread src/content/docs/snowflake/getting-started/ci-cd.mdx
Comment thread src/content/docs/snowflake/getting-started/faq.md Outdated
- Mirror the Azure getting-started doc's lstk emulator-selection
  pattern (interactive picker, no --type flag) instead of
  recommending `lstk start --type snowflake`, since the team is
  still debating whether --type should mutate the global config.
- Drop the "AWS, Snowflake, and Azure emulators" aside from the lstk
  description to match the AWS doc's phrasing.
- Soften the CI wording in the installation guide's "Container and
  orchestration tools" intro so it doesn't imply lstk is unsuitable
  for CI, and cross-link to the CI Integration page.
- Point the "configuration" link at the Snowflake-specific
  configuration page instead of the AWS one.
- Reword the Local Development prerequisite from "a valid Auth
  Token" to "a license that includes Snowflake features" to
  distinguish token validity from license entitlement.
- Put the Snowflake CLI's optional-parameter prompt in a callout box.
- Drop the legacy `localstack` CLI comparison from the CI/CD guide.
- Fix the credit-scoring Snowpark tutorial's stale `localstack` CLI
  reference to use `lstk`.
@quetzalliwrites

Copy link
Copy Markdown
Collaborator Author

DOC-339: Address review feedback on Snowflake Getting Started rewrite

  • Mirror the Azure getting-started doc's lstk emulator-selection pattern (interactive picker, no --type flag) instead of recommending lstk start --type snowflake, since the team is still debating whether --type should mutate the global config.
  • Drop the "AWS, Snowflake, and Azure emulators" aside from the lstk description to match the AWS doc's phrasing.
  • Soften the CI wording in the installation guide's "Container and orchestration tools" intro so it doesn't imply lstk is unsuitable for CI, and cross-link to the CI Integration page.
  • Point the "configuration" link at the Snowflake-specific configuration page instead of the AWS one.
  • Reword the Local Development prerequisite from "a valid Auth Token" to "a license that includes Snowflake features" to distinguish token validity from license entitlement.
  • Put the Snowflake CLI's optional-parameter prompt in a callout box.
  • Drop the legacy localstack CLI comparison from the CI/CD guide.
  • Fix the credit-scoring Snowpark tutorial's stale localstack CLI reference to use lstk.

Pushed as a1d195ab.

A few threads I left open for others, since they need input I can't verify myself:

  • The docker-socket mount question on the Docker Compose/CLI examples (@hovaesco) — didn't want to guess whether the Snowflake emulator needs it.
  • The test/test/test credential format question (@hovaesco) — flagged as possibly limited by the Python emulator.
  • Confirmed the container name is already consistent between the Docker Compose config and the "View logs" tab (localstack-snowflake in both).
  • Confirmed the lstk troubleshooting link intentionally points at the shared /aws/developer-tools/running-localstack/lstk/ page — the Azure doc does the same, since lstk docs live in one place across products.

@quetzalliwrites

Copy link
Copy Markdown
Collaborator Author

tyvm to @mmaureenliu and @peter-smith-phd for the amazing 1st pass review round 👏🏻

@mmaureenliu mmaureenliu left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lgtm. Just wait for @hovaesco to confirm the few tech points remained and I think we are done!

@hovaesco hovaesco left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice update, but the changes are inconsistent between pages.

Comment thread src/content/docs/snowflake/tutorials/s3-tables-iceberg-integration.md Outdated
Comment thread src/content/docs/snowflake/getting-started/local-development.mdx
### Docker Compose

Use Docker Compose when you want a reusable configuration file that can be shared across a team or checked into a project repository.
Create a `docker-compose.yml` with the following configuration:

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Docker socket config is same as in AWS


Use the Docker CLI for one-off starts or when you want to test a container configuration before moving it into Compose:

```bash

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good

<TabItem label="Docker Compose">

```bash
docker compose logs -f localstack

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, it's a service name from Docker compose, I would use localstack-snowflake for clarity

Comment thread src/content/docs/snowflake/getting-started/installation.mdx Outdated
Comment thread src/content/docs/snowflake/getting-started/installation.mdx
Comment thread src/content/docs/snowflake/getting-started/installation.mdx
- Add the docker socket mount to both the Docker Compose and Docker
  CLI examples, confirmed needed same as AWS (hovaesco).
- Remove the redundant "Update lstk" step right after a fresh
  install (hovaesco).
- Rename the Docker Compose service key to localstack-snowflake for
  clarity, and update the "View logs" Docker Compose command to
  match (hovaesco/Maureen).
- Add --name localstack-snowflake to the Docker CLI start command:
  the "docker logs -f localstack-snowflake" example didn't work
  without it, since no --name was set (hovaesco).
- Fix the auth-token guide's lingering `lstk start --type snowflake`
  to plain `lstk start`, consistent with the installation guide.
- Use distinguishable, realistic-looking test credentials in Local
  Development now that hovaesco confirmed the Python emulator has no
  format limitation there (Maureen's original suggestion).
- Migrate the remaining two tutorials (aws-lambda-localstack-snowpark
  and s3-tables-iceberg-integration) from the legacy `localstack` CLI
  to lstk, matching the credit-scoring tutorial fixed earlier and
  answering hovaesco's "why only one of three" question.
@quetzalliwrites

quetzalliwrites commented Sep 1, 2026

Copy link
Copy Markdown
Collaborator Author

Nice review feedback @hovaesco, thx! Please let us know when you've had a chance to also test this.

I've pushed e02fa72c addressing:

  • Added the docker socket mount to both the Docker Compose and Docker CLI examples, now that you confirmed it's needed same as AWS.
  • Removed the redundant "Update lstk" step right after a fresh install.
  • Renamed the Docker Compose service key to localstack-snowflake for clarity, and updated the "View logs" Docker Compose command to match.
  • Found the actual bug behind "I don't think this will work": the Docker CLI docker run command never set --name, so docker logs -f localstack-snowflake had nothing to attach to — it would've picked up Docker's auto-generated random name instead. Added --name localstack-snowflake to fix it for real, not just cross fingers.
  • Fixed the auth-token guide's lingering lstk start --type snowflake to plain lstk start, consistent with the installation guide (per Maureen's clarification above).
  • Used distinguishable, realistic-looking test credentials in Local Development now that you confirmed the Python emulator has no format limitation there.
  • Migrated the remaining two tutorials (aws-lambda-localstack-snowpark and s3-tables-iceberg-integration) from the legacy localstack CLI to lstk, matching the credit-scoring tutorial — to directly answer your "why only one of three" question.

@quetzalliwrites quetzalliwrites changed the title DOC-339: Rewrite Snowflake Getting Started to mirror AWS v2 and default to lstk DOC-339 (sept 8 launch hotfix): Rewrite Snowflake Getting Started to mirror AWS v2 and default to lstk Sep 7, 2026
@quetzalliwrites
quetzalliwrites merged commit e66cc5c into main Sep 7, 2026
1 of 2 checks passed
@quetzalliwrites
quetzalliwrites deleted the doc-339-docs-snowflake-getting-started-v2-also-making-lstk-default branch September 7, 2026 07:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants