Configurar o Snowflake CLI para desenvolver um app¶
Este tópico descreve como os provedores instalam e usam o Snowflake CLI para desenvolver e gerenciar o Snowflake Native Apps. O Snowflake CLI é uma ferramenta de linha de comando de código aberto projetada explicitamente para cargas de trabalho centradas no desenvolvedor, além das operações do SQL.
Instalação e configuração do Snowflake CLI¶
Para instalar e configurar o Snowflake CLI, siga estes passos:
Instale o Snowflake CLI para o seu sistema operacional.
Para obter mais informações, consulte Instalação do Snowflake CLI.
Configure uma conexão à sua conta Snowflake.
Para obter mais informações, consulte Configuração do Snowflake CLI.
Sobre modelos de apps e projetos do Snowflake CLI¶
Ao utilizar o Snowflake CLI para desenvolver o seu Snowflake Native App, você trabalha dentro de um projeto. Um projeto é um diretório que contém todos os arquivos e diretórios necessários para o seu Snowflake Native App. Assim como outros repositórios de código, esses arquivos podem ter controle de versão usando tecnologias como o Git e podem ser compartilhados em plataformas como o Github.
O Snowflake fornece modelos de apps que você pode usar para configurar seu projeto. Esses modelos estão disponíveis no repositório snowflake-cli-templates do GitHub.
Os modelos disponíveis são:
Modelo |
Descrição |
|---|---|
app_basic |
Um modelo básico que inclui os arquivos e diretórios essenciais necessários para o seu app. |
app_streamlit_java |
Um modelo que inclui os arquivos e diretórios essenciais necessários para o seu app, código de extensão Java e um app Streamlit de amostra. |
app_streamlit_js |
Um modelo que inclui os arquivos e diretórios essenciais necessários para o seu app, código de extensão JavaScript e um app Streamlit de amostra. |
app_streamlit_python |
Um modelo que inclui os arquivos e diretórios essenciais necessários para o seu app, código de extensão Python e um app Streamlit de amostra. |
Configurar um novo projeto para o seu Snowflake Native App¶
Para configurar um novo projeto para o seu Snowflake Native App, siga estas etapas:
Execute o comando
initpara criar um novo projeto:snow init --template <template_name> <project_name>
Digite um valor para o identificador do projeto.
Este valor é utilizado como nome base para os componentes do app que o Snowflake CLI cria, incluindo o pacote do aplicativo. Você pode modificar ou substituir esse valor posteriormente no arquivo de definição do projeto.
Após executar este comando, um novo diretório chamado <project_name> é criado no diretório em que você executou o comando. Esse diretório contém os arquivos e diretórios necessários para o seu Snowflake Native App com a seguinte estrutura de diretórios:
<project_name>/
├── app/
├── manifest.yml
├── README.md
├── setup_script.sql
├── README.md
├── snowflake.yml
As pastas e arquivos neste diretório são descritos na tabela a seguir:
Arquivo/diretório |
Descrição |
|---|---|
|
Este diretório contém o código do aplicativo e os recursos do seu app. Você pode modificar ou adicionar arquivos nesse diretório conforme necessário. |
|
Este arquivo define os metadados e a configuração do seu app, incluindo o nome, a versão, a descrição e os recursos do app. Consulte Criação do arquivo de manifesto para um aplicativo para obter mais informações. |
|
Este arquivo fornece uma visão geral do seu app e instruções para usá-lo. Este é o arquivo README que é exibido no Snowflake Marketplace. |
|
Este script SQL é executado quando o app é instalado. Você pode modificar esse script para incluir quaisquer etapas de configuração necessárias para o seu app. Para obter mais informações, consulte Create the setup script |
|
Este arquivo fornece uma visão geral do projeto e instruções para usar o Snowflake CLI com o seu app. |
|
Este é o arquivo de definição do projeto que descreve os objetos que podem ser implantados no Snowflake. Você deve modificar este arquivo para definir os recursos que fazem parte do seu app. |
Criação do arquivo de definição do projeto¶
O Snowflake CLI usa um arquivo de definição de projeto para descrever objetos que podem ser implantados no Snowflake. Este arquivo deve ser nomeado snowflake.yml. Este arquivo determina o nome do pacote de aplicativo e especifica os recursos que fazem parte do seu Snowflake Native App.
Para obter mais informações sobre o arquivo de definição de projeto, consulte Arquivos de definição de projeto.
A seguir, veja um exemplo de um arquivo snowflake.yml simples utilizado para um Snowflake Native App:
definition_version: 2
entities:
hello_snowflake_package:
type: application package
stage: stage_content.hello_snowflake_stage
manifest: app/manifest.yml
identifier: hello_snowflake_package
artifacts:
- src: app/*
dest: ./
hello_snowflake_app:
type: application
from:
target: hello_snowflake_package
debug: false
A tabela a seguir descreve os campos neste exemplo:
Campo |
Descrição |
|---|---|
|
A versão do formato do arquivo de definição de projeto. A versão atual é 2. |
|
Uma lista de entidades que fazem parte do projeto. Cada entidade tem um identificador exclusivo e um tipo. |
|
O identificador da entidade do pacote de aplicativo. Esse nome é utilizado como nome base para os componentes do app que o Snowflake CLI cria, incluindo o pacote de aplicativo. |
|
O tipo de entidade. Neste caso, é um |
|
A área de preparação em que o pacote de aplicativo é armazenado. |
|
O caminho para o arquivo de manifesto que define os metadados e a configuração do seu app. |
|
O identificador da entidade do pacote de aplicativo. Esse nome é utilizado como nome base para os componentes do app que o Snowflake CLI cria, incluindo o pacote de aplicativo. |
|
Uma lista de arquivos e diretórios incluídos no pacote de aplicativo. Cada artefato tem uma origem ( |
|
O identificador da entidade do aplicativo. |
|
Especifica a origem do aplicativo. Neste caso, ele é criado a partir do pacote de aplicativo |
|
Um valor booleano que indica se o modo de depuração está ativado para o app. |
Desenvolvimento de seu Snowflake Native App¶
Após configurar seu projeto e criar o arquivo de definição do projeto, você pode começar a desenvolver seu Snowflake Native App criando o pacote de aplicativo e modificando o arquivo de manifesto e o script de configuração.
Para obter mais informações, consulte os seguintes tópicos: