Partilhar via


TwineAuthenticate@1 - Python twine carregar autenticar tarefa v1

Utilize esta tarefa para autenticar uploads de distribuições Python utilizando fio. Adicione -r FeedName/EndpointName --config-file $(PYPIRC_PATH) ao seu comando de upload de fio. Para os feeds presentes nesta organização, utilize o nome de alimentação como repositório (-r). Caso contrário, utilize o nome do ponto final definido na ligação de serviço.

Syntax

# Python twine upload authenticate v1
# Authenticate for uploading Python distributions using twine. Add '-r FeedName/EndpointName --config-file $(PYPIRC_PATH)' to your twine upload command. For feeds present in this organization, use the feed name as the repository (-r). Otherwise, use the endpoint name defined in the service connection.
- task: TwineAuthenticate@1
  inputs:
  # Feeds and Authentication
    #artifactFeed: # string. My feed (select below). 
    #pythonUploadServiceConnection: # string. Feed from external organizations.

Entradas

artifactFeed - O meu feed (selecione abaixo)
string.

Especifica o nome de alimentação do artefacto Azure para autenticar com fio. O feed autenticante deve estar presente dentro da organização. Para feeds de âmbito de projeto, utilize a sintaxe projectName/feedNameSelect.


pythonUploadServiceConnection - Alimentação de organizações externas
string.

Um nome de ligação de ligação de fio de uma organização externa para autenticar com fio. As credenciais armazenadas no ponto final devem ter permissões de upload de pacotes.


Opções de controlo de tarefas

Todas as tarefas têm opções de controlo para além das entradas de tarefa. Para obter mais informações, consulte opções de Controlo e propriedades de tarefas comuns.

Variáveis de saída

Nenhum.

Observações

Fornece credenciais twine a uma PYPIRC_PATH variável ambiental para o âmbito da construção. Isto permite-lhe publicar pacotes Python para alimentar a twine partir da sua construção.

Quando é que eu devo executar esta tarefa?

Esta tarefa deve ser executada antes de utilizar o fio para enviar as distribuições python para uma fonte de pacote autenticada, como artefactos Azure. Não há outros requisitos de encomenda. Múltiplas invocações desta tarefa não empilharão credenciais. Cada execução de tarefa apagará quaisquer credenciais previamente armazenadas.

O meu agente está por detrás de um representante da web. O TwineAuthenticate vai criar um fio para usar o meu representante?

N.º Embora esta tarefa em si funcione por trás de um representante web que o seu agente foi configurado para usar, não configura o fio para usar o proxy.

O meu Pipeline precisa de aceder a um feed num projeto diferente.

Se o oleoduto estiver a decorrer num projeto diferente do projeto que acolhe o feed, deve criar o outro projeto para conceder acesso à leitura/escrita ao serviço de construção. Consulte as permissões do Pacote em Azure Pipelines para mais detalhes.

Exemplos

Os exemplos a seguir demonstram como publicar a distribuição de python para o feed de artefactos Azure e o registo oficial de python.

Publicar a distribuição python para o feed de artefactos Azure

Neste exemplo, estamos a definir a autenticação para publicação num Feed de Artefactos Azure privados. A tarefa autenticada cria um .pypirc ficheiro que contém as credenciais auth necessárias para publicar uma distribuição no feed.

# Install python distributions like wheel, twine etc
- script: |
     pip install wheel
     pip install twine
  
# Build the python distribution from source
- script: |
     python setup.py bdist_wheel
   
- task: TwineAuthenticate@1
  displayName: Twine Authenticate
  inputs:
    # In this case, name of the feed is 'myTestFeed' in the project 'myTestProject'. Project is needed because the feed is project scoped.
    artifactFeed: myTestProject/myTestFeed
  
# Use command line script to 'twine upload', use -r to pass the repository name and --config-file to pass the environment variable set by the authenticate task.
- script: |
     python -m twine upload -r myTestFeed --config-file $(PYPIRC_PATH) dist/*.whl

A artifactFeed entrada conterá o projeto e o nome de alimentação se o feed for projetado. Se o feed for de âmbito organizativo, apenas o nome do feed deve ser fornecido. Saiba mais.

Publicar a distribuição python para o registo oficial python

Neste exemplo, estamos a criar autenticação para publicação no registo oficial de Python. Crie uma entrada de ligação de ligação de fio para pypi. A tarefa autenticada utiliza essa ligação de serviço para criar um .pypirc ficheiro que contenha as credenciais de auth necessárias para publicar a distribuição.

# Install python distributions like wheel, twine etc
- script: |
     pip install wheel
     pip install twine
  
# Build the python distribution from source
- script: |
     python setup.py bdist_wheel
   
- task: TwineAuthenticate@1
  displayName: Twine Authenticate
  inputs:
    # In this case, name of the service connection is "pypitest".
    pythonUploadServiceConnection: pypitest
  
# Use command line script to 'twine upload', use -r to pass the repository name and --config-file to pass the environment variable set by the authenticate task.
- script: |
     python -m twine upload -r "pypitest" --config-file $(PYPIRC_PATH) dist/*.whl

Requisitos

Requisito Description
Tipos de gasodutos YAML, Construção clássica, lançamento clássico
Continua Agente, Grupo de Implementação
Exigências Nenhuma
Capacidades Esta tarefa não satisfaz quaisquer pedidos para tarefas subsequentes no trabalho.
Restrições de comando Qualquer
Variáveis de configuração Qualquer
Versão do agente 2.144.0 ou maior
Categoria da tarefa Pacote
Requisito Description
Tipos de gasodutos YAML, Construção clássica, lançamento clássico
Continua Agente, Grupo de Implementação
Exigências Nenhuma
Capacidades Esta tarefa não satisfaz quaisquer pedidos para tarefas subsequentes no trabalho.
Restrições de comando Qualquer
Variáveis de configuração Qualquer
Versão do agente 2.120.0 ou maior
Categoria da tarefa Pacote