snow dcm deploy¶
Implanta alterações do projeto local no Snowflake, criando, alterando ou descartando objetos para corresponder aos seus arquivos de definição.
Sintaxe¶
Argumentos¶
identifierIdentificador do DCM Project. Exemplo: MY_DB.MY_SCHEMA.MY_PROJECT. É compatível com nomes totalmente qualificados (recomendado) ou simples. Se não for qualificado, o padrão será o banco de dados e o esquema da conexão. Opcional se
--targetoudefault_targetestiver definido no manifesto.
Opções¶
--from PATHCaminho do diretório local contendo arquivos de projeto DCM. Omita para usar o diretório atual.
--variable, -D TEXTVariáveis para o contexto de execução; por exemplo:
-D "<key>=<value>".--alias TEXTAlias para a implantação.
--target TEXTPerfil de destino do
manifest.ymla ser utilizado. Usadefault_targetse não for especificado.--save-outputSalva a resposta do comando e os artefatos no diretório local “out/”. Padrão: sem valor. False.
--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: sem valor. False.
--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.
--decimal-precision INTEGERNúmero de casas decimais a serem exibidas para valores decimais. Usa a precisão padrão do Python se nada for especificado. [variável de ambiente: SNOWFLAKE_DECIMAL_PRECISION].
--helpExibe o texto de ajuda para este comando.
Notas de uso¶
O comando snow dcm deploy implanta alterações de projeto local no Snowflake, criando, alterando ou descartando objetos para corresponder aos arquivos de definição.
Quando você implanta um DCM project, as seguintes ações são realizadas:
Objetos que estão definidos, mas ainda não existem, são criados.
Objetos que já existem, mas diferem da definição atual, são alterados.
Objetos que já existem e não têm diferenças entre o estado e a definição permanecem inalterados.
Objetos que já existem, mas não estão mais definidos, são descartados.
Objetos que existiam anteriormente e cujas definições foram adicionadas recentemente ao DCM project são adicionados aos objetos gerenciados por esse DCM project.
Nota
Esse comando carrega automaticamente arquivos SQL de origem locais para uma área de preparação temporária no Snowflake, de modo que o conteúdo impacte o resultado final da operação.
Use a opção --save-output para salvar os resultados da implantação em um arquivo local out/deploy.json.
Para obter mais informações sobre o processo de implantação, consulte Implantar um DCM project.
Exemplos¶
Implante um objeto DCM project com as opções padrão, em que o nome do projeto é especificado no destino identificado pela propriedade
default_targetno manifesto:Implante um objeto DCM project em que o nome do projeto é especificado no destino
DEVno manifesto:Implante um objeto DCM project com um nome totalmente qualificado explícito:
Implante um projeto do DCM project em que o nome do projeto é especificado no destino
DEVno manifesto, especifique o valor para a variáveldb_namee defina o alias de implantação comov3:Implante um objeto DCM project de um diretório específico e salve a saída: