Publicar pacotes Python com o Azure Pipelines
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
O Azure Pipelines permite que os desenvolvedores publiquem pacotes Python em feeds de Artefatos do Azure e registros públicos, como o PyPi. Este artigo irá guiá-lo através de como publicar pacotes Python no seu feed de Artefatos do Azure.
Pré-requisitos
Uma organização e um projeto do Azure DevOps. Crie uma organização ou um projeto , caso ainda não o tenha feito.
Um feed de Artefatos do Azure. Crie um feed se ainda não tiver um.
Autenticar com um feed
Para publicar pacotes Python usando o twine, você deve primeiro autenticar com seu feed de Artefatos do Azure. A tarefa TwineAuthenticate fornece credenciais de fio para uma variável de PYPIRC_PATH
ambiente. Essa variável é então usada portwine
para publicar pacotes diretamente do seu pipeline.
Importante
As credenciais armazenadas na variável de ambiente PYPIRC_PATH
têm precedência sobre as dos arquivos .ini
e .conf
.
Se adicionar várias tarefas TwineAuthenticate em diferentes estágios do seu pipeline, cada execução de tarefa estenderá (não substituirá) a variável de ambiente PYPIRC_PATH
existente.
Entre em sua organização do Azure DevOps e navegue até seu projeto.
Selecione Pipelinese, em seguida, selecione sua definição de pipeline.
Selecione Editare, em seguida, adicione o seguinte trecho ao seu pipeline YAML.
steps: - task: UsePythonVersion@0 displayName: 'Use Python 3.x' - task: TwineAuthenticate@1 inputs: artifactFeed: <PROJECT_NAME/FEED_NAME> ## For an organization-scoped feed, use: artifactFeed: <FEED_NAME>
Publicar pacotes Python em um feed
Nota
Para publicar os seus pacotes em um feed usando o Azure Pipelines, certifique-se de que tanto o Serviço de Compilação da Coleção de Projetos quanto as identidades do Serviço de Compilação do seu projeto recebam a função de Editor de Feed (Colaborador) nas configurações do seu feed. Consulte Gerenciar permissões para obter detalhes.
Entre em sua organização do Azure DevOps e navegue até seu projeto.
Selecione Pipelinese, em seguida, selecione sua definição de pipeline.
Selecione Editare, em seguida, adicione o seguinte trecho ao seu pipeline YAML.
steps: - task: UsePythonVersion@0 displayName: 'Use Python 3.x' - script: | pip install build pip install twine displayName: 'Install build and twine' - script: | python -m build -w displayName: 'Python build' - task: TwineAuthenticate@1 inputs: artifactFeed: <PROJECT_NAME/FEED_NAME> ## For an organization-scoped feed, use: artifactFeed: <FEED_NAME> displayName: 'Twine Authenticate' - script: | python -m twine upload -r <FEED_NAME> --config-file $(PYPIRC_PATH) dist/*.whl displayName: 'Upload to feed'