Esta página foi traduzida pela API Cloud Translation.
Switch to English

Guia de início rápido do Python

Este guia de início rápido mostra como configurar um repositório PyPI do Artifact Registry e fazer upload de um pacote para ele.

O gerenciamento de pacotes está em Alfa. Ele só está disponível para usuários Alfa e pode não incluir todos os recursos disponíveis para o gerenciamento de contêineres. Para se inscrever no Alfa, preencha o formulário de inscrição. Para mais informações, consulte Requisitos para acessar recursos Alfa.

Antes de começar

  1. Faça login na sua conta do Google Cloud. Se você começou a usar o Google Cloud agora, crie uma conta para avaliar o desempenho de nossos produtos em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.
  2. No Console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  3. Verifique se o faturamento está ativado para seu projeto na nuvem. Saiba como confirmar se o faturamento está ativado para o projeto.

  4. Ative a API Artifact Registry.

    Ative a API

  5. A versão 329.0.0 da ferramenta gcloud é necessária para trabalhar com repositórios PyPI. Instale e inicialize o Cloud SDK, se ele ainda não estiver instalado. Para uma instalação atual, atualize os componentes com o comando:

        gcloud components update
        

    Você pode verificar a versão da ferramenta gcloud com o comando:

        gcloud version
        
  6. Instale o Python 3 e crie um ambiente virtual em Python. Para instruções, consulte o tutorial do Google Cloud para configurar o Python.

Crie um repositório

Crie o repositório para seus pacotes.

  1. Crie o repositório:

    Console

    1. Abra a página Repositórios no Console do Cloud.

      Abrir a página Repositórios

    2. Clique em Criar repositório.

    3. Especifique quickstart-pypi-repo como o nome do repositório.

    4. Escolha PyPI como o formato.

    5. Em Tipo de local, selecione Região e escolha o local us-central1.

    6. Clique em Criar.

    O repositório é adicionado à lista de repositórios.

    gcloud

    1. Execute o seguinte comando para criar um novo repositório PyPI no projeto atual chamado quickstart-pypi-repo no local us-central1.

      gcloud alpha artifacts repositories create quickstart-pypi-repo \
          --repository-format=pypi \
          --location=us-central1 \
          --description="PyPI repository"
      
    2. Execute o seguinte comando para verificar se o repositório foi criado:

      gcloud artifacts repositories list
      

    Para mais informações sobre os comandos do Artifact Registry, execute o comando gcloud artifacts.

  2. Para simplificar os comandos gcloud, defina o repositório padrão como quickstart-pypi-repo e o local padrão como us-central1. Depois que os valores forem definidos, não será necessário especificá-los nos comandos gcloud que exigem um repositório ou local.

    Para definir o repositório, execute o comando:

    gcloud config set artifacts/repository quickstart-pypi-repo
    

    Para definir o local, execute o comando:

    gcloud config set artifacts/location us-central1
    

    Para mais informações sobre esses comandos, consulte a documentação do gcloud config set.

Configurar a autenticação

A biblioteca de keyring do Python fornece aos aplicativos uma maneira de acessar back-ends de keyring, o que significa que o sistema operacional e armazenamentos de credenciais de terceiros

O Artifact Registry fornece o back-end de chaves keyrings.google-artifactregistry-auth para manipular a autenticação com repositórios do Artifact Registry. Quando você usa esse back-end, o Artifact Registry encontra suas credenciais automaticamente no ambiente.

Para configurar a autenticação com o back-end do keyring Artifact Registry:

  1. No pip versão 21.1 (link em inglês), o comportamento da consulta de keyring foi alterado. Para garantir que você esteja usando uma versão de pip que pode ser autenticada com repositórios do Artifact Registry:

    1. Verifique a versão do pip.

      pip --version
      
    2. Se você estiver usando a versão 21.1 ou mais recente, instale a versão 21.01.

      python -m pip install pip==21.01
      
  2. Instale a biblioteca de keyrings.

    pip install keyring
    
  3. Instale o back-end do Artifact Registry.

    pip install keyrings.google-artifactregistry-auth
    
  4. Listar back-ends para confirmar a instalação.

    keyring --list-backends
    

    A lista deve incluir

    • ChainerBackend(priority:10)
    • GooglePyPIAuth(priority: 9)
  5. Execute o seguinte comando para imprimir a configuração do repositório e adicioná-la ao projeto do Python.

    gcloud alpha artifacts print-settings pypi
    

    A saída será assim:

    # Insert the following snippet into your .pypirc
    
    [distutils]
    index-servers =
        quickstart-pypi-repo
    
    [quickstart-pypi-repo]
    repository: https://us-central1-pypi.pkg.dev/PROJECT/quickstart-pypi-repo/
    
    # Insert the following snippet into your pip.conf
    
    [global]
    index-url = https://us-central1-pypi.pkg.dev/PROJECT/quickstart-pypi-repo/simple/
    
  6. Adicione as seguintes configurações ao arquivo .pypirc. O local padrão é o arquivo de configuração de pip por usuário:

    • Linux e MacOS: $HOME/.pypirc
    • Windows: %USERPROFILE%\.pypirc
    [distutils]
    index-servers =
        quickstart-pypi-repo
    
    [quickstart-pypi-repo]
    repository: https://us-central1-pypi.pkg.dev/PROJECT/quickstart-pypi-repo/
    

    Substitua PROJECT pela ID do seu projeto.

  7. Edite o arquivo de configuração do pip para incluir a seguinte configuração na seção [global]. O local padrão é para o arquivo de configuração do pip por usuário:

    • Linux: $HOME/.config/pip/pip.conf ou $HOME/.pip/pip.conf
    • MacOS: /Library/Application Support/pip/pip.conf ou $HOME/.config/pip/pip.conf
    • Windows: %APPDATA%\pip\pip.ini ou %USERPROFILE%\pip\pip.ini

    Para este guia de início rápido, configure o pip para pesquisar apenas o repositório do Artifact Registry. Adicione a seguinte configuração à seção [global]:

    [global]
    index-url = https://us-central1-pypi.pkg.dev/PROJECT/quickstart-pypi-repo/simple/
    

    A string /simple/ no final do caminho do repositório indica que ele implementa a API Python Simple Repository.

  8. Faça login no SDK do Cloud com as credenciais de usuário.

    gcloud auth login
    

Seu ambiente Python agora está configurado para autenticar com o Artifact Registry.

Conseguir um pacote de exemplo

Quando você cria um projeto do Python, os pacotes são salvos em um subdiretório dist no projeto Python. Para simplificar este guia de início rápido, você fará o download dos arquivos de pacotes pré-criados.

  1. Crie um diretório chamado dist e mude para o diretório.

    mkdir dist
    cd dist
    
  2. Faça o download dos pacotes de amostra do Python (em inglês). Esse projeto de amostra é usado no tutorial do guia de usuário do pacote de Python Como empacotar projetos do Python.

    Versões mais recentes do pip usam o arquivo wheel para instalação (o arquivo que termina em .whl). Se necessário, pip retorna ao arquivo tar para instalação.

Fazer upload do pacote para o repositório

Use a ferramenta do Python Twine para publicar pacotes.

  1. Instale o Twine (em inglês).

    pip install twine
    
  2. Faça upload dos pacotes para o repositório a partir do diretório dist.

    twine upload --repository-url https://us-central1-pypi.pkg.dev/PROJECT/quickstart-pypi-repo/ dist/*
    

Ver o pacote no repositório

Para verificar se o pacote foi adicionado ao repositório:

Console

  1. Abra a página Repositórios no Console do Cloud.

    Abrir a página Repositórios

  2. Na lista de repositórios, clique no repositório quickstart-pypi-repo.

    A página Pacotes lista os pacotes no repositório.

gcloud

Para listar os pacotes no repositório quickstart-pypi-repo, execute o seguinte comando:

gcloud artifacts packages list --repository=quickstart-pypi-repo

Para ver as versões de um pacote, execute o seguinte comando:

gcloud artifacts versions list --package=PACKAGE

Em que PACKAGE é o ID do pacote.

Instale o pacote

Execute o seguinte comando para instalar o pacote:

pip install --index-url https://us-central1-pypi.pkg.dev/PROJECT/quickstart-pypi-repo/simple/ sampleproject

Solução de problemas

Por padrão, ferramentas como o pip e o Twine não retornam mensagens de erro detalhadas. Se você encontrar um erro, execute novamente o comando com o parâmetro --verbose para receber uma mensagem mais detalhada. Consulte Como solucionar problemas para ver um exemplo.

Limpeza

Para evitar cobranças na sua conta do Google Cloud pelos recursos usados neste guia de início rápido, siga estas etapas:

Antes de remover o repositório, verifique se os pacotes que você quer manter estão disponíveis em outro local.

Para excluir o repositório:

Console

  1. Abra a página Repositórios no Console do Cloud.

    Abrir a página Repositórios

  2. Na lista de repositórios, selecione o repositório quickstart-pypi-repo.

  3. Clique em Excluir.

gcloud

  1. Para excluir o repositório quickstart-pypi-repo, execute o seguinte comando:

    gcloud artifacts repositories delete quickstart-pypi-repo
    
  2. Se você quiser remover as configurações padrão de repositório e localização que definiu para a configuração ativa gcloud, execute os seguintes comandos:

    gcloud config unset artifacts/repository
    gcloud config unset artifacts/location
    

A seguir