snow app deploy¶
Cria um pacote de aplicativo na sua conta Snowflake e sincroniza as alterações locais no estágio sem criar ou atualizar o aplicativo. A execução deste comando sem nenhum argumento, como em snow app deploy, é uma abreviação de snow app deploy --prune --recursive.
Sintaxe¶
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>
--workload-identity-provider <workload_identity_provider>
--private-key-file <private_key_file>
--token <token>
--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>
--oauth-client-id <oauth_client_id>
--oauth-client-secret <oauth_client_secret>
--oauth-authorization-url <oauth_authorization_url>
--oauth-token-request-url <oauth_token_request_url>
--oauth-redirect-uri <oauth_redirect_uri>
--oauth-scope <oauth_scope>
--oauth-disable-pkce
--oauth-enable-refresh-tokens
--oauth-enable-single-use-refresh-tokens
--client-store-temporary-credential
--format <format>
--verbose
--debug
--silent
--enhanced-exit-codes
Argumentos¶
paths...Caminhos, relativos à raiz do projeto, de arquivos ou diretórios que você deseja carregar em um estágio. Se um arquivo for especificado, ele deverá corresponder a uma das entradas do padrão src de artefatos em snowflake.yml. Se um diretório for especificado, ele será pesquisado em busca de subpastas ou arquivos para implementação com base nas entradas do padrão src dos artefatos. Se não for especificado, o comando sincroniza todas as alterações locais no estágio.
Opções¶
--prune / --no-pruneSe os arquivos especificados devem ser excluídos do estágio caso eles não existam localmente. Se definido, o comando exclui arquivos que existem no estágio, mas não no sistema de arquivos local. Esta opção não pode ser usada quando caminhos são especificados.
--recursive, -r / --no-recursiveSe deve percorrer e implantar arquivos de subdiretórios. Se definido, o comando implanta todos os arquivos e subdiretórios; caso contrário, somente os arquivos no diretório atual são implantados.
--interactive / --no-interactiveQuando ativada, esta opção exibe prompts mesmo que a entrada e a saída padrão não sejam dispositivos terminais. O padrão é True em um ambiente shell interativo e False caso contrário.
--forceQuando ativada, esta opção faz com que o comando aprove implicitamente quaisquer prompts que surjam. Você deve habilitar esta opção se o modo interativo não estiver especificado e se quiser executar ações potencialmente destrutivas. O padrão é não definido. Padrão: falso.
--validate / --no-validateQuando ativada, esta opção aciona a validação de script de configuração SQL de um Snowflake Native App implementado. Padrão: Verdadeiro.
--package-entity-id TEXTO ID da entidade do pacote no qual a operação é feita quando definition_version for 2 ou superior.
--app-entity-id TEXTO ID da entidade do aplicativo no qual a operação é feita quando definition_version for 2 ou superior.
-p, --project TEXTCaminho onde o projeto Snowflake está armazenado. O padrão é o diretório de trabalho atual.
--env TEXTCadeia de caracteres no formato key=value. Substitui as variáveis da seção env usada para modelos. Padrão: [].
--connection, -c, --environment TEXTNome da conexão, conforme definido no arquivo
config.toml. Padrão:default.--host TEXTEndereço do host da conexão. Substitui o valor especificado para a conexão.
--port INTEGERPorta para a conexão. Substitui o valor especificado para a conexão.
--account, --accountname TEXTNome atribuído à sua conta Snowflake. Substitui o valor especificado para a conexão.
--user, --username TEXTNome de usuário para se conectar ao Snowflake. Substitui o valor especificado para a conexão.
--password TEXTSenha do Snowflake. Substitui o valor especificado para a conexão.
--authenticator TEXTAutenticador Snowflake. Substitui o valor especificado para a conexão.
--workload-identity-provider TEXTProvedor de identidade de carga de trabalho (AWS, AZURE, GCP, OIDC). Substitui o valor especificado para a conexão.
--private-key-file, --private-key-path TEXTCaminho do arquivo de chave privada Snowflake. Substitui o valor especificado para a conexão.
--token TEXTToken OAuth a ser usado ao se conectar ao Snowflake.
--token-file-path TEXTCaminho para o arquivo com um token OAuth a ser usado ao se conectar ao Snowflake.
--database, --dbname TEXTBanco de dados a ser usado. Substitui o valor especificado para a conexão.
--schema, --schemaname TEXTEsquema de banco de dados a ser usado. Substitui o valor especificado para a conexão.
--role, --rolename TEXTFunção a ser usada. Substitui o valor especificado para a conexão.
--warehouse TEXTWarehouse a ser usado. Substitui o valor especificado para a conexão.
--temporary-connection, -xUsa uma conexão definida com parâmetros de linha de comando, em vez de uma definida na configuração. Padrão: falso.
--mfa-passcode TEXTToken a ser usado para autenticação multifator (MFA).
--enable-diagSe deve gerar um relatório de diagnóstico de conexão. Padrão: falso.
--diag-log-path TEXTCaminho para o relatório gerado. O padrão é o diretório temporário do sistema. Padrão: <system_temporary_directory>.
--diag-allowlist-path TEXTCaminho para um arquivo JSON que contém parâmetros da lista de permissões.
--oauth-client-id TEXTValor do ID de cliente fornecido pelo provedor de identidade para integração com o Snowflake.
--oauth-client-secret TEXTValor do segredo do cliente fornecido pelo provedor de identidade para integração com o Snowflake.
--oauth-authorization-url TEXTPonto de extremidade do provedor de identidade que fornece o código de autorização ao driver.
--oauth-token-request-url TEXTPonto de extremidade do provedor de identidade que fornece os tokens de acesso ao driver.
--oauth-redirect-uri TEXTURI a ser usado para redirecionamento de código de autorização.
--oauth-scope TEXTEscopo solicitado na solicitação de autorização do provedor de identidade.
--oauth-disable-pkceDesativa o Proof Key for Code Exchange (PKCE). Padrão:
False.--oauth-enable-refresh-tokensPermite uma reautenticação silenciosa quando o token de acesso real fica desatualizado. Padrão:
False.--oauth-enable-single-use-refresh-tokensSe o usuário deve optar pela semântica de token de atualização de uso único. Padrão:
False.--client-store-temporary-credentialArmazena a credencial temporária.
--format [TABLE|JSON|JSON_EXT|CSV]Especifica o formato de saída. Padrão: TABLE.
--verbose, -vExibe entradas de log para os níveis de log
infoe superiores. Padrão: falso.--debugExibe entradas de log para níveis de log de
depuraçãoe superiores; os logs de depuração contêm informações adicionais. Padrão: falso.--silentDesliga a saída intermediária para o console. Padrão: falso.
--enhanced-exit-codesDiferencia os códigos de erro de saída com base no tipo de falha. Padrão: falso.
--helpExibe o texto de ajuda para este comando.
Notas de uso¶
O comando snow app deploy cria um pacote de aplicativo em sua conta Snowflake, carrega arquivos de código para seu estágio, valida o script de configuração SQL e executa quaisquer ganchos implementados posteriormente definidos em snowflake.yml. Ao contrário do comando snow app run, este comando não instala ou atualiza um objeto de aplicativo.
Para obter mais informações sobre a implantação de um aplicativo com canais de lançamento habilitados, consulte Processo com canais de lançamento ativados.
Exemplos¶
Se você quiser criar um pacote de aplicativo usando arquivos preparados, você pode executar:
cd my_app_project
my_app_project_build_script.sh
snow app deploy --connection="dev"