Snowflake Native App Frameworkワークフロー

This topic describes the workflows for developing, publishing, and installing a Snowflake Native App.

開発ワークフロー

The following workflow outlines the general tasks for developing and testing Snowflake Native App:

注釈

Developing an app is an iterative process. You might perform many of these tasks multiple times or in a different order depending on the requirements of your app and environment.

  1. 開発環境を設定します。

    Snowflake Native App を開発するには、開発環境をセットアップする必要があります。これには次が含まれます。

    • Snowflake CLI をインストールします。アプリを開発するために Snowflake CLI を設定する をご参照ください。

    • アプリケーションファイルをアップロードするステージを作成します。

      注釈

      Snowflake CLI を使用している場合、 Snowflake CLI は開発中にアプリケーションファイルをアップロードする仮ステージを自動的に作成するので、手動でステージを作成する必要はありません。

      SQL を使用したステージの作成については、 CREATE STAGE をご参照ください。Snowsight を使用したステージの作成については、 Snowsightを使用したファイルのステージング をご参照ください。

  2. アプリケーションパッケージを作成 します。

    An application package is a container that encapsulates the data content, application logic, metadata, and setup script required by an app.

  3. Create the setup script for your app.

    The setup script contains the SQL statements that define the components created when a consumer installs your app.

  4. :doc:` アプリケーションのマニフェストファイル </developer-guide/native-apps/manifest-overview>` を作成します。

    The manifest file defines the configuration and setup properties required by the app, including the location of the setup script and versions.

  5. Upload the application files to a stage.

    The setup script, the manifest file, and other resources that your app requires must be uploaded to a named stage so that these files are available as you develop your app.

  6. アプリのバージョンとパッチを追加します。

    See リリースチャネル、バージョン、パッチについて for more information.

  7. アプリに共有データコンテンツを追加します。

    You can securely share your data content with consumers as part of your app. For more information, see Snowflake Native App でデータのコンテンツを共有する

  8. アプリに機能を追加します。

    次のような追加の機能を提供するためにアプリにさまざまな機能を追加できます。

  9. Set up logging and event handling to troubleshoot your app.

    To troubleshoot an app, you can set up logging and event handling. Consumers can set up logging and event handling in their account and share them with providers.

  10. Set the release directive for your app.

    リリースディレクティブは、どのバージョンとパッチレベルがコンシューマーにより利用可能かを決定します。アプリケーションパッケージのリリースチャネルごとにリリースディレクティブを設定できます。詳細については、 リリースチャンネルを使用したリリースディレクティブのセット をご参照ください。

  11. アプリをテストします。

    コンシューマーに公開する前に、自分のアカウントでアプリをテストできます。詳細については、 アプリをローカルにインストールしてテストする をご参照ください。

    Snowflake provides development mode and debug mode to test different aspects of your app.

  12. 自動セキュリティスキャンを実行 します。

    Before you can share an app with consumers outside your organization, the app must pass an automated security scan to ensure that it is secure and stable.

公開ワークフロー

After developing and testing your app, providers can publish the app to share it with consumers.

  1. プロバイダーになります

    Becoming a provider allows you to create and manage listings to share your app with consumers.

  2. リストを作成。

    You can create a private listing or a Snowflake Marketplace listing to share your app with consumers. For more information, see Create a listing for an app.

  3. 承認を得るためにリストを送信します。

    Before you can publish a listing to the Snowflake Marketplace, you must submit the listing to Snowflake for approval. For more information, see 承認のためのリストの送信

  4. リストを公開します。

    After your listing is approved, you can publish the listing to make it available to consumers. For more information, see Publish a listing for an app.

コンシューマーワークフロー

Consumers can discover the app and install it from a listing. After installing the app, consumers can configure, use, and monitor the app. See Working with apps as a consumer.

  1. Snowflakeコンシューマーになります

    Snowflakeコンシューマーになると、プライベートで、または Snowflake Marketplace で共有されているリストにアクセスすることができます。より制限されたデータ共有機能を提供する直接共有やデータ交換の一環として共有されたデータにアクセスすることもできます。

  2. Install the app.

    Consumers can install an app from a listing.

  3. Grant the privileges required by the app.

    Some apps might ask the consumer to grant global and object-level privileges to the app.

  4. Enable logging and event sharing to troubleshoot the app.

    A provider can set up an app to emit logging and event data. A consumer can set up an events table to share this data with providers. Logs and event data are useful when troubleshooting an app.

  5. Manage an app.

    After installing and configuring the app, a consumer can perform additional tasks to use and monitor the app.