なぜ重要か
従来は snowflake.yml と、ビルド専用の app.yml を併用する構成が必要でした。単一の app.yml への移行により、マニフェストに一致する1つの CREATE OR ALTER APPLICATION SERVICE としてデプロイできます。開発、ステージング、本番などの構成を target として切り替えられます。
対象となるチーム
- Snowflake App Runtime のアプリケーション開発者
- Snowflake アプリケーションのリリース・デプロイ担当者
- 開発・ステージング・本番環境を管理するプラットフォームチーム
- Snowflake CLI の標準化を担当する開発者体験・DevOpsチーム
提供条件
- 提供ステータス: Preview
- Snowflake App Runtime: Open preview
- エディション: リリースノートに記載なし
- リージョン: リリースノートに記載なし
- 前提条件: 最新の Snowflake CLI。snow helpers check-version で確認し、必要に応じてアップグレードする
ユースケース
- 開発、ステージング、本番で異なるデプロイ設定を持つプロジェクトを、named target と --target で運用する。
- 同一アプリを複数の Snowflake アカウントへ、アカウントごとに異なる構成でデプロイする。
- 異なる利用者層向けに構成を変えたアプリのバリアントを、1つのプロジェクトで管理する。
- database: USER$ を指定し、target を実行者個人のデータベースへデプロイする。
- snowflake.yml とビルド専用 app.yml を使用している既存プロジェクトを、単一の app.yml 構成へ移行する。
仕組みと使い方
最新の Snowflake CLI を使用し、app.yml の先頭に version: 2 を記述します。新規プロジェクトでは snow app setup がこのファイルを作成します。複数のデプロイ構成が必要な場合は named target を定義し、--target で対象を選択します。CLI のバージョンは snow helpers check-version で確認し、コマンドが存在しない場合や古いリリースの場合はアップグレードします。既存プロジェクトでは、Snowflake の「Migrate from snowflake.yml to app.yml」に従って構成を移行します。
導入ステップ
- 使用中の Snowflake CLI で
snow helpers check-versionを実行し、必要なら最新リリースへアップグレードする。 - 新規プロジェクトでは
snow app setupを実行し、生成された app.yml にversion: 2があることを確認する。 - 既存プロジェクトでは snowflake.yml とビルド専用 app.yml の設定を、単一の app.yml へ移行する。
- 複数環境や複数アカウント向けの構成が必要な場合は named target を定義する。
- 検証対象の構成を
--targetで選択し、Preview 環境でデプロイ結果を確認する。
運用上の注意
- 古い CLI は app.yml のデプロイ用キーを無視し、引き続き snowflake.yml を要求します。
- 単一の app.yml への切り替えは単なるファイル名変更ではなく、デプロイ動作が変わります。
- 移行後は app.yml の
profile:ブロックが無視され、databaseとschemaは接続設定へフォールバックしません。 - database: USER$ を使う場合、target は実行者個人のデータベースへデプロイされます。
制約事項
- 本機能は Preview であり、Snowflake App Runtime も Open preview です。
- 古い CLI との互換動作では、app.yml のデプロイ設定を利用できません。
- 移行後のリモートビルドでは、Next.js standalone assets が自動的にコピーされません。
- エディション別、リージョン別の提供条件はリリースノートに記載なしです。
次に確認すること
- 公式の「app.yml manifest for Snowflake App Runtime」で version 2 のキーと target の定義方法を確認する。
- 「Migrate from snowflake.yml to app.yml」を参照し、既存の profile、database、schema、Next.js 資産の扱いを検証する。
- 「Deploy targets」で --target の運用方法と、個人データベースへのデプロイ条件を確認する。
- Preview 利用に必要なアカウント権限と、開発用・検証用環境でのデプロイ結果を確認する。
公式情報
仕様・提供条件は更新される可能性があります。導入前に必ず公式リリースノートを確認してください。
https://docs.snowflake.com/release-notes/2026/other/2026-08-31-app-yml-v2