Introdução com pacotes de Python em Artefactos Azure

Azure DevOps Services | Azure DevOps Server | 2020 Azure DevOps Server | 2019 TFS 2018

Este guia irá acompanhá-lo usando artefactos Azure para publicar e consumir Python pacotes de e para o seu feed.

Criar um feed

  1. Selecione Artefactos e, em seguida, selecione Criar Feed.

    Create a feed button

  2. Dê ao seu feed um Nome e escolha a sua visibilidade (quem pode ver pacotes neste feed), fontes a montante e definições de âmbito (telescópio de projeto ou organização) .

    New feed dialog box

  3. Selecione Criar quando terminar.

A Azure Artifacts é instalada por padrão para clientes TFS 2017. Tem de fazer upgrade para a TFS 2017 para utilizar artefactos Azure. Se esta for a primeira vez que usa o seu feed, pode ser-lhe pedido que atribua uma licença

  1. Vá para build & release e selecione Pacotes.

    Go to Azure Artifacts TFS

  2. Selecione + Novo feed.

    New feed button TFS

  3. Dê ao seu feed um Nome, uma Descrição e instale quem sabe ler, quem pode contribuir e se quiser incluir pacotes externos.

    New feed dialog box TFS

  4. Selecione Criar quando terminar.

Ligação para alimentar

Existem duas formas primárias de se conectar a um feed para publicar ou consumir os seus pacotes Python:

  1. Instale e utilize o pacote de chaves de artefactos , que configurará automaticamente a autenticação para si.
  2. Configurar manualmente credenciais para pip.ini/pip.conf para empurrões, e .pypirc para pulls com um token de acesso pessoal (PAT).

Nota

o chave-chaves de artefactos não é suportado em versões mais recentes de Ubuntu.

Utilize o porta-chaves de artefactos para configurar a autenticação

O pacote de chaves de artefactos permite-lhe configurar a autenticação para publicar e consumir os seus pacotes Python de e para o feed. Tanto pip como fio usam a biblioteca de porta-chaves Python para encontrar credenciais.

Importante

Você deve ter pip 19.2 e fio 1.13.0 ou superior para usar o porta-chaves de artefactos.

  1. Numa janela de aviso de comando elevada, executar o seguinte comando para instalar o pacote de chaves de artefactos:

    pip install artifacts-keyring
    
  2. Instale pacotes a partir do seu feed.

    pip install <package-name> --index-url https://pkgs.dev.azure.com/<your-organization-name>/<your-project-name>/_packaging/<your-feed-name>/pypi/simple
    
  3. Publique pacotes no seu feed.

    twine upload --repository-url https://pkgs.dev.azure.com/<your-organization-name>/<your-project-name>/_packaging/<your-feed-name>/pypi/upload
    

Nota

O pacote de chaves de artefactos está em camadas em cima do nosso Fornecedor de Credenciais de Artefactos Azure. Para opções de configuração mais avançadas, consulte o repositório de artefactos-credprovider .

Autenticação manualmente configurada

  1. Crie um token de acesso pessoal com âmbito PackagingRead> para autenticar em Azure DevOps.

  2. A partir do seu feed, selecione Ligação para alimentar.

    Connect to feed button

  3. Selecione pip sob o cabeçalho Python.

    Select pip to connect to your feed

  4. Certifique-se de que instalou a versão mais recente do porta-chaves Azure Artifacts do menu "Obter as ferramentas".

    Nota

    O pacote de chaves-de-artefactos fornece autenticação para a publicação e consumo de pacotes de Python de e para os feeds de Artefactos Azure.

  5. Crie um virtualenv, se ainda não tiver um.

  6. Adicione um ficheiro pip.ini (Windows) ou pip.conf (Mac/Linux) ao seu virtualenv. Certifique-se de não verificar o seu acesso pessoal a um repositório público.

    [global]
    extra-index-url=https://<your-feed-name>:<your-PAT-key>@pkgs.dev.azure.com/<your-organization-name>/<your-project-name>/_packaging/<your-feed-name>/pypi/simple/
    
  7. Executar o seguinte comando para instalar um pacote

    pip install <package-name>
    

Quando ligar ao Azure DevOps pela primeira vez, será solicitado para obter credenciais. Insira o seu nome de utilizador (qualquer cadeia) e o seu token de acesso pessoal nos campos apropriados. As credenciais serão colocadas em cache localmente e serão usadas para o assinar automaticamente na próxima vez que utilizar o serviço.

Nota

Se pretender configurar a autenticação em Pipelines Azure, utilize a tarefa Python Pip Authenticate para instalar pacotes, ou a tarefa Python Twine Upload Authenticate para empurrar pacotes.