Validação de um pacote de aplicativo¶
Pré-requisitos¶
Você deve ter uma conexão existente em seu arquivo
config.toml.Você deve ter um arquivo
snowflake.ymlem seu projeto Snowflake Native App.
Snowflake CLI valida automaticamente um script de configuração Snowflake Native App, juntamente com quaisquer outros arquivos SQL inclusos usando a instrução SQL EXECUTE IMMEDIATE, quando você executa (snow app run) ou implementa (snow app deploy) um aplicativo. Ela usa o script mais recentemente carregado por um dos comandos. A validação verifica erros de sintaxe SQL, referências de objeto inválidas e práticas recomendadas. Se a validação do script falhar, o comando executado será anulado, mas não reverterá automaticamente os arquivos preparados.
Para obter mais informações sobre scripts de configuração Snowflake Native App, consulte Create the setup script na documentação do Snowflake Native App Framework.
Como validar um script de configuração manualmente¶
Ocasionalmente, é possível querer validar um script de configuração antes de implementar um aplicativo para evitar possíveis impactos que possam ocorrer se a validação falhar durante o processo de implementação. O comando snow app validate valida um script de configuração sem precisar executar ou implementar um aplicativo. Ele carrega os arquivos de origem para um estágio de rascunho separado, que é descartado automaticamente após a conclusão do comando para evitar perturbar os arquivos no estágio de origem do aplicativo.
Crie uma conexão, se necessário.
Execute o comando
snow app validatede dentro do seu projeto, semelhante ao seguinte:Quando bem-sucedido, o comando retorna a seguinte mensagem:
Se a validação falhar, a seguinte mensagem de erro, juntamente com quaisquer outras mensagens de erro, será exibida:
Se quiser consultar a saída de validação bruta como JSON, é possível executar snow app validate--format json, conforme mostrado:
onde:
errors mostra uma lista de erros, se existirem. Erros causam falha na validação.
warnings mostra uma lista de avisos, se existirem.
status mostra o resultado da validação: SUCCESS ou FAILURE.
Se a validação encontrar algum erro que cause falha na validação, ou avisos que permitam o sucesso, o comando exibirá as seguintes informações sobre o erro ou aviso:
message: Mensagem legível por humanos para o erro ou aviso.cause: Razão pela qual o constructo SQL é considerado um erro ou aviso.errorCode: Código numérico associado ao erro ou aviso.fileName: Nome do arquivo com o erro ou aviso, relativo à raiz do estágio.line: Número da linha no arquivo que identifica o local do erro ou aviso.column: Número da coluna na linha onde ocorreu o erro ou aviso.
O exemplo a seguir mostra uma validação com falha que continha avisos e erros: