snow app deploy

Snowflakeアカウントにアプリケーションパッケージを作成し、アプリケーションを作成または更新せずに、ローカルの変更をステージに同期します。 snow app deploy のように、引数なしでこのコマンドを実行すると、 snow app deploy --prune --recursive の省略形になります。

構文

snow app deploy
  <paths>
  --prune / --no-prune
  --recursive / --no-recursive
  --interactive / --no-interactive
  --force
  --validate / --no-validate
  --package-entity-id <package_entity_id>
  --app-entity-id <app_entity_id>
  --project <project_definition>
  --env <env_overrides>
  --connection <connection>
  --host <host>
  --port <port>
  --account <account>
  --user <user>
  --password <password>
  --authenticator <authenticator>
  --private-key-file <private_key_file>
  --token-file-path <token_file_path>
  --database <database>
  --schema <schema>
  --role <role>
  --warehouse <warehouse>
  --temporary-connection
  --mfa-passcode <mfa_passcode>
  --enable-diag
  --diag-log-path <diag_log_path>
  --diag-allowlist-path <diag_allowlist_path>
  --format <format>
  --verbose
  --debug
  --silent
Copy

引数

paths...

ステージにアップロードするファイルの、プロジェクトルートを基準とした相対パス。パスは、snowflake.yml内のアーティファクトsrcパターンエントリのいずれかと一致する必要があります。ディレクトリが指定された場合、アーティファクトのsrcパターン・エントリに基づいて、配置するサブフォルダやファイルが検索されます。指定しない場合、コマンドはステージへのすべてのローカル変更を同期します。

オプション

--prune / --no-prune

指定されたファイルがローカルに存在しない場合にステージから削除するかどうか。設定されている場合、コマンドはステージ内に存在するがローカルファイルシステム内に存在しないファイルを削除します。パスが指定されている場合、このオプションは使用できない。

--recursive, -r / --no-recursive

サブディレクトリからファイルをトラバースしてデプロイするかどうか。設定されている場合、コマンドはすべてのファイルとサブディレクトリをデプロイします。それ以外の場合は、現在のディレクトリ内のファイルのみがデプロイされます。

--interactive / --no-interactive

このオプションを有効にすると、標準入力と出力が端末デバイスでない場合でも、プロンプトが表示されます。対話的なシェル環境では True、それ以外では False がデフォルトです。

--force

このオプションを有効にすると、コマンドは表示されるすべてのプロンプトを暗黙的に承認するようになります。インタラクティブモードが指定されておらず、潜在的に破壊的なアクションを実行する場合は、このオプションを有効にする必要があります。デフォルトでは設定されていません。デフォルト: false。

--validate / --no-validate

このオプションを有効にすると、デプロイされた Snowflake Native App のセットアップスクリプト SQL の検証がトリガーされます。デフォルト: True

--package-entity-id TEXT

definition_versionが2以上のときに操作するパッケージ・エンティティの ID 。

--app-entity-id TEXT

definition_versionが2以上のときに操作するアプリケーション・エンティティの ID 。

-p, --project TEXT

Snowflakeプロジェクトが存在するパス。デフォルトは現在の作業ディレクトリです。

--env TEXT

key=value形式の文字列。テンプレートに使用される env セクションの変数をオーバーライドする。デフォルト: []

--connection, -c, --environment TEXT

config.toml ファイルで定義されている接続の名前。デフォルト: デフォルト

--host TEXT

接続用のホストアドレス。接続に指定された値を上書きします。

--port INTEGER

接続のポート。接続に指定された値を上書きします。

--account, --accountname TEXT

Snowflakeアカウントに割り当てられた名前。接続に指定された値を上書きします。

--user, --username TEXT

Snowflakeに接続するユーザー名。接続に指定された値を上書きします。

--password TEXT

Snowflakeのパスワード。接続に指定された値を上書きします。

--authenticator TEXT

Snowflakeの認証コード。接続に指定された値を上書きします。

--private-key-file, --private-key-path TEXT

Snowflake プライベートキーファイルへのパス。接続に指定された値を上書きします。

--token-file-path TEXT

Snowflake に接続する際に使用する OAuth トークンを含むファイルへのパス。

--database, --dbname TEXT

使用するデータベース。接続に指定された値を上書きします。

--schema, --schemaname TEXT

使用するデータベーススキーマ。接続に指定された値を上書きします。

--role, --rolename TEXT

使用するロール。接続に指定された値を上書きします。

--warehouse TEXT

使用するウェアハウス名。接続に指定された値を上書きします。

--temporary-connection, -x

構成で定義された接続ではなく、コマンドラインパラメーターで定義された接続を使用します。デフォルト: false。

--mfa-passcode TEXT

多要素認証(MFA)に使用するトークン。

--enable-diag

Pythonコネクター診断テストを実行します。デフォルト: false。

--diag-log-path TEXT

診断レポートパス。デフォルト: <temporary_directory>

--diag-allowlist-path TEXT

オプションの許可リストへの診断レポートパス。

--format [TABLE|JSON]

出力形式を指定します。デフォルト: TABLE

--verbose, -v

ログレベル info 以上のログエントリを表示します。デフォルト: false。

--debug

ログレベル debug 以上のログ エントリを表示します。デバッグログには追加情報が含まれます。デフォルト: false。

--silent

コンソールへの中間出力をオフにします。デフォルト: false。

--help

このコマンドのヘルプテキストを表示します。

使用上の注意

snow app deploy コマンドは、Snowflakeアカウントにアプリケーションパッケージを作成し、コードファイルをそのステージにアップロードし、設定スクリプト SQL を認証し、 snowflake.yml で定義されている何らかのデプロイ後フックを起動します。 snow app run コマンドとは異なり、このコマンドはアプリケーションオブジェクトをインストールまたはアップグレードしません。

ステージングされたファイルを使用してアプリケーションパッケージを作成する場合は、次のコマンドを実行できます。

cd my_app_project
my_app_project_build_script.sh
snow app deploy --connection="dev"
Copy