snow package create¶
Cria um pacote Python como um arquivo zip que pode ser carregado em um estágio e importado para um aplicativo Snowpark Python.
Sintaxe¶
snow snowpark package create
<name>
--ignore-anaconda
--index-url <index_url>
--skip-version-check
--allow-shared-libraries
--connection <connection>
--host <host>
--port <port>
--account <account>
--user <user>
--password <password>
--authenticator <authenticator>
--private-key-file <private_key_file>
--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>
--format <format>
--verbose
--debug
--silent
Argumentos¶
name
Nome do pacote a ser criado.
Opções¶
--ignore-anaconda
Não procura pacotes no canal Snowflake Anaconda. Padrão: falso.
--index-url TEXT
URL básico do Python Package Index a ser usado para pesquisa de pacotes. Isso deve apontar para um repositório compatível com PEP 503 (a API de repositório simples) ou um diretório local disposto no mesmo formato.
--skip-version-check
Ignore a comparação de versões de dependências entre requisitos e Anaconda. Padrão: falso.
--allow-shared-libraries
Permite bibliotecas compartilhadas (.so) ao usar pacotes instalados por meio de PIP. Padrão: falso.
--connection, -c, --environment TEXT
Nome da conexão, conforme definido no arquivo
config.toml
. Padrão:padrão
.--host TEXT
Endereço do host da conexão. Substitui o valor especificado para a conexão.
--port INTEGER
Porta para a conexão. Substitui o valor especificado para a conexão.
--account, --accountname TEXT
Nome atribuído à sua conta Snowflake. Substitui o valor especificado para a conexão.
--user, --username TEXT
Nome de usuário para se conectar ao Snowflake. Substitui o valor especificado para a conexão.
--password TEXT
Senha do Snowflake. Substitui o valor especificado para a conexão.
--authenticator TEXT
Autenticador Snowflake. Substitui o valor especificado para a conexão.
--private-key-file, --private-key-path TEXT
Caminho do arquivo de chave privada Snowflake. Substitui o valor especificado para a conexão.
--token-file-path TEXT
Caminho para o arquivo com um token OAuth que deve ser usado ao conectar-se ao Snowflake.
--database, --dbname TEXT
Banco de dados a ser usado. Substitui o valor especificado para a conexão.
--schema, --schemaname TEXT
Esquema de banco de dados a ser usado. Substitui o valor especificado para a conexão.
--role, --rolename TEXT
Função a ser usada. Substitui o valor especificado para a conexão.
--warehouse TEXT
Warehouse a ser usado. Substitui o valor especificado para a conexão.
--temporary-connection, -x
Usa conexão definida com parâmetros de linha de comando, em vez de uma definida na configuração. Padrão: falso.
--mfa-passcode TEXT
Token a ser usado para autenticação multifator (MFA).
--enable-diag
Execução do teste de diagnóstico do conector Python. Padrão: falso.
--diag-log-path TEXT
Caminho do relatório de diagnóstico. Padrão: <temporary_directory>.
--diag-allowlist-path TEXT
Caminho do relatório de diagnóstico para a lista de permissões opcional.
--format [TABLE|JSON]
Especifica o formato de saída. Padrão: TABLE.
--verbose, -v
Exibe entradas de log para níveis de log
info
e superior. Padrão: falso.--debug
Exibe entradas de log para níveis de log de
depuração
e superiores; os logs de depuração contêm informações adicionais. Padrão: falso.--silent
Desliga a saída intermediária para o console. Padrão: falso.
--help
Exibe o texto de ajuda para este comando.
Notas de uso¶
O comando snowpark package create
faz o seguinte:
Cria um artefato pronto para ser carregado em um estágio.
Verifica bibliotecas nativas e pergunta se você deseja continuar. Se as bibliotecas nativas estiverem presentes nos pacotes baixados, este comando funciona da mesma forma que o comando
snowpark package build
.
Exemplos¶
Este exemplo cria um pacote Python como um arquivo zip que pode ser carregado em um estágio e posteriormente importado por um aplicativo Snowpark Python. As dependências para o pacote “july” são encontradas no canal Anaconda, então elas foram excluídas do arquivo
.zip
. O comando exibe os pacotes que você precisa incluir emrequisitos.txt
do seu projeto Snowpark.snow snowpark package create july==0.1
Package july.zip created. You can now upload it to a stage using snow snowpark package upload -f july.zip -s <stage-name>` and reference it in your procedure or function. Remember to add it to imports in the procedure or function definition. The package july is successfully created, but depends on the following Anaconda libraries. They need to be included in project requirements, as their are not included in .zip. matplotlib contourpy >=1.0.1 numpy>=1.20 bokeh selenium mypy==1.8.0 Pillow pytest-xdist wurlitzer cycler >=0.10 fonttools >=4.22.0 kiwisolver >=1.3.1 pyparsing >=2.3.1 jinja2 python-dateutil >=2.7 six >=1.5 importlib-resources >=3.2.0
Este exemplo cria o pacote
july.zip
que você pode usar em seu projeto Snowpark sem precisar adicionar nenhuma dependência ao arquivorequirements.txt
. As mensagens de erro indicam que alguns pacotes contêm bibliotecas compartilhadas, o que pode não funcionar, como ao criar um pacote usando o Windows.snow snowpark package create july==0.1 --ignore-anaconda --allow-shared-libraries
2024-04-11 16:24:56 ERROR Following dependencies utilise shared libraries, not supported by Conda: 2024-04-11 16:24:56 ERROR numpy contourpy fonttools kiwisolver matplotlib pillow 2024-04-11 16:24:56 ERROR You may still try to create your package with --allow-shared-libraries, but the might not work. 2024-04-11 16:24:56 ERROR You may also request adding the package to Snowflake Conda channel 2024-04-11 16:24:56 ERROR at https://support.anaconda.com/ Package july.zip created. You can now upload it to a stage using snow snowpark package upload -f july.zip -s <stage-name>` and reference it in your procedure or function. Remember to add it to imports in the procedure or function definition.
Este exemplo falha ao criar o pacote porque ele já existe. Você ainda pode criar o pacote à força usando a opção
--ignore-anaconda
.snow snowpark package create matplotlib
Package matplotlib is already available in Snowflake Anaconda Channel.