Publicar pacotes do Python (CLI)

Serviços Azure DevOps | Azure DevOps Server | Azure DevOps Server 2022

Este artigo orienta você pela publicação de pacotes do Python em um feed do Azure Artifacts usando a interface de linha de comando do NuGet.

Pré-requisitos

Produto Requisitos
Azure DevOps - Uma organização do Azure DevOps.
- Um projeto do Azure DevOps.
– Baixar e instalar Python.

Criar um feed

  1. Entre na sua organização do Azure DevOps e navegue até seu projeto.

  2. Selecione Artefatos e, em seguida, selecione Criar Feed.

  3. Insira um nome para o feed.

  4. Escolha uma configuração de visibilidade para controlar quem pode exibir pacotes no feed.

  5. Selecione Incluir pacotes de fontes públicas comuns se quiser que o feed use pacotes upstream de fontes como nuget.org ou npmjs.com.

  6. Para Escopo, escolha se o feed está no escopo do projeto atual ou de toda a organização.

  7. Selecione Criar quando terminar.

    Captura de tela mostrando seleções para criar um novo feed no Azure DevOps Services.

  1. Entre no servidor Azure DevOps e vá para o projeto.

  2. Selecione Artefatos e, em seguida, selecione Criar Feed.

  3. Insira um nome para o feed.

  4. Escolha uma configuração de visibilidade para controlar quem pode exibir pacotes no feed.

  5. Selecione Incluir pacotes de fontes públicas comuns se quiser que o feed use pacotes upstream de fontes como nuget.org ou npmjs.com.

  6. Para Escopo, escolha se o feed está no escopo do projeto atual ou de toda a organização.

  1. Selecione Criar quando terminar.

    Captura de tela mostrando seleções para criar um novo feed no Azure DevOps 2022.

Observação

Quando você cria um feed, a conta do projeto Serviço de Compilação, como projectName Build Service (orgName), recebe por padrão a função de Leitor de Feed e Upstream (Colaborador).

Publicar pacotes

  1. Siga as etapas na configuração do Project para autenticar com o feed se você não tiver feito isso e, em seguida, prossiga para a próxima etapa.

  2. Entre na sua organização do Azure DevOps e navegue até seu projeto.

  3. Selecione Artefatos e selecione Conectar para feed.

  4. Selecione twine na área de navegação à esquerda. Se esta for a primeira vez que você usa o Azure Artifacts com twine, certifique-se de instalar os pré-requisitos selecionando Obter as ferramentas e seguindo as etapas fornecidas.

  5. Adicione um arquivo pypirc ao diretório base e cole o snippet fornecido nele. Seu arquivo deve ser semelhante ao snippet a seguir. Se você já tiver um pypirc que contenha credenciais para o índice PyPI público, recomendamos remover a seção [pypi] para evitar a publicação acidental de pacotes privados no PyPI.

    [distutils]
    Index-servers =
    FEED_NAME
    
    [FEED_NAME]
    Repository = https://pkgs.dev.azure.com/ORGANIZATION_NAME/PROJECT_NAME/_packaging/FEED_NAME/pypi/upload/
    
  6. Execute o comando a seguir no diretório do projeto para criar distribuições de origem e wheel.

    python setup.py sdist bdist_wheel
    
  7. Execute o comando a seguir para publicar seu pacote. Use o sinalizador -r REPOSITORY_NAME para garantir que seus pacotes privados não sejam publicados acidentalmente no PyPI.

    twine upload -r REPOSITORY_NAME dist/*
    

Importante

Você deve ter o twine 1.13.0 ou superior para usar o artifacts-keyring. Consulte Requisitos de uso para obter mais detalhes.