Execução de arquivos de um repositório¶
É possível usar o comando snow git execute
para todos os arquivos .sql
e .py
em um caminho de repositório. O comando procura todos os arquivos SQL e Python e executa o comando EXECUTE IMMEDIATE em cada um deles.
snow git execute <REPO_PATH> [--silent]
onde:
<REPO_PATH>
pode ser qualquer uma das seguintes opções:Um estágio de repositório, como
@snowcli_git/branches/main/
, para executar comandos de todos os arquivos.sql
no estágio.Um padrão semelhante a um glob, como
@snowcli_git/branches/main/scripts/*
, para executar comandos de todos os arquivos.sql
no diretórioscripts
.Um arquivo
.sql
específico, como@snowcli_git/branches/main/scripts/script.sql
, para executar comandos continha apenas o arquivoscript.sql
.
--silent
oculta mensagens intermediárias com resultados de execução de arquivo.
Nota
O comando snow git execute
não exibe a saída de nenhum dos comando SQL que ele processa.
O exemplo a seguir mostra como executar comandos SQL em todos os arquivos dentro do diretório project
que corresponde a uma expressão regular.
snow git execute "@git_test/branches/main/projects/script?.sql"
SUCCESS - git_test/branches/main/projects/script1.sql
SUCCESS - git_test/branches/main/projects/script2.sql
SUCCESS - git_test/branches/main/projects/script3.sql
+---------------------------------------------------------------+
| File | Status | Error |
|---------------------------------------------+---------+-------|
| git_test/branches/main/projects/script1.sql | SUCCESS | None |
| git_test/branches/main/projects/script2.sql | SUCCESS | None |
| git_test/branches/main/projects/script3.sql | SUCCESS | None |
+---------------------------------------------------------------+
Adicionar a opção --silent
ao mesmo comando oculta as mensagens intermediárias que mostram a progressão dos arquivos processados.
snow git execute "@git_test/branches/main/projects/script?.sql" --silent
+---------------------------------------------------------------+
| File | Status | Error |
|---------------------------------------------+---------+-------|
| git_test/branches/main/projects/script1.sql | SUCCESS | None |
| git_test/branches/main/projects/script2.sql | SUCCESS | None |
| git_test/branches/main/projects/script3.sql | SUCCESS | None |
+---------------------------------------------------------------+