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.