Fluxo de trabalho do Snowflake Native App Framework¶
This topic describes the workflows for developing, publishing, and installing a Snowflake Native App.
Fluxo de trabalho de desenvolvimento¶
The following workflow outlines the general tasks for developing and testing Snowflake Native App:
Nota
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.
Set up your development environment.
To develop a Snowflake Native App, you need to set up your development environment. This includes:
Install the Snowflake CLI. See Set up the Snowflake CLI to develop an app.
Create a stage to upload your application files.
Nota
If you are using Snowflake CLI you do not need to create a stage manually because Snowflake CLI automatically creates a temporary stage to upload your application files during development.
For information on creating a stage using SQL, see CREATE STAGE. For information on creating a stage using Snowsight, see Preparação de arquivos usando o Snowsight.
-
An application package is a container that encapsulates the data content, application logic, metadata, and setup script required by an app.
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.
Crie o arquivo de manifesto para seu aplicativo.
The manifest file defines the configuration and setup properties required by the app, including the location of the setup script and versions.
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.
Add versions and patches for your app.
See About release channels, versions, and patches for more information.
Add shared data content to your app.
You can securely share your data content with consumers as part of your app. For more information, see Compartilhe conteúdo de dados em um Snowflake Native App
Add features to your app.
You can add various features to your app to provide additional functionality, including the following features:
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.
Set the release directive for your app.
A release directive determines which version and patch level are available to consumers. You can set the release directive for each release channel of your application package. For more information, see Definir a diretriz de lançamento usando um canal de lançamento.
Test your app.
You can test an app in your account before publishing it to consumers. For more information, see Instalação e teste um aplicativo localmente.
Snowflake provides development mode and debug mode to test different aspects of your app.
Execute a verificação de segurança automatizada.
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.
Fluxo de trabalho de publicação¶
After developing and testing your app, providers can publish the app to share it with consumers.
-
Becoming a provider allows you to create and manage listings to share your app with consumers.
Create a listing.
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.
Submit your listing for approval.
Before you can publish a listing to the Snowflake Marketplace, you must submit the listing to Snowflake for approval. For more information, see Envie uma listagem para aprovação.
Publish your listing.
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.
Fluxo de trabalho do consumidor¶
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.
Por que se tornar um consumidor do Snowflake.
Tornar-se um consumidor do Snowflake permite que você acesse listagens compartilhadas de forma privada ou no Snowflake Marketplace. Você também pode acessar dados compartilhados como parte de compartilhamentos diretos ou trocas de dados, que oferecem capacidades mais limitadas de compartilhamento de dados.
-
Consumers can install an app from a listing.
Grant the privileges required by the app.
Some apps might ask the consumer to grant global and object-level privileges to the app.
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.
-
After installing and configuring the app, a consumer can perform additional tasks to use and monitor the app.