TwineAuthenticate@1 - Attività di caricamento di Python twine authentication v1

Usare questa attività per autenticare i caricamenti delle distribuzioni Python usando twine. Aggiungere -r FeedName/EndpointName --config-file $(PYPIRC_PATH) al comando di caricamento gemello. Per i feed presenti in questa organizzazione, usare il nome del feed come repository (-r). In caso contrario, usare il nome dell'endpoint definito nella connessione al servizio.

Sintassi

# 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.

Input

artifactFeed - Feed personale (selezionare di seguito)
string.

Specifica il nome del feed dell'artefatto di Azure per l'autenticazione con gemello. Il feed di autenticazione deve essere presente all'interno dell'organizzazione. Per i feed con ambito progetto, usare la sintassi projectName/feedNameSelect.


pythonUploadServiceConnection - Feed da organizzazioni esterne
string.

Nome di connessione del servizio gemello da un'organizzazione esterna per l'autenticazione con gemello. Le credenziali archiviate nell'endpoint devono disporre delle autorizzazioni di caricamento del pacchetto.


Opzioni di controllo attività

Tutte le attività dispongono di opzioni di controllo oltre ai relativi input attività. Per altre informazioni, vedere Opzioni di controllo e proprietà comuni delle attività.

Variabili di output

No.

Osservazioni

Fornisce twine le credenziali a una PYPIRC_PATH variabile di ambiente per l'ambito della compilazione. Ciò consente di pubblicare pacchetti Python in feed con twine la compilazione.

Quando nella pipeline è necessario eseguire questa attività?

Questa attività deve essere eseguita prima di usare twine per caricare le distribuzioni Python in un'origine del pacchetto autenticata, ad esempio Elementi di Azure. Non esistono altri requisiti di ordinamento. Le chiamate multiple di questa attività non eseguiranno lo stack di credenziali. Ogni esecuzione dell'attività cancella tutte le credenziali archiviate in precedenza.

L'agente è dietro un proxy Web. TwineAuthenticate configura twine per usare il proxy?

No. Anche se questa attività funzionerà dietro un proxy Web che l'agente è stato configurato per l'uso, non configura il gemello per l'uso del proxy.

La pipeline personale deve accedere a un feed in un progetto diverso

Se la pipeline è in esecuzione in un progetto diverso dal progetto che ospita il feed, è necessario configurare l'altro progetto per concedere l'accesso in lettura/scrittura al servizio di compilazione. Per altre informazioni, vedere Autorizzazioni del pacchetto in Azure Pipelines .

Esempio

Gli esempi seguenti illustrano come pubblicare la distribuzione python nel feed di Elementi di Azure e nel registro Python ufficiale.

Pubblicare la distribuzione di Python nel feed degli artefatti di Azure

In questo esempio si imposta l'autenticazione per la pubblicazione in un feed di elementi di Azure privato. L'attività di autenticazione crea un .pypirc file contenente le credenziali di autenticazione necessarie per pubblicare una distribuzione nel 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

L'input artifactFeed conterrà il progetto e il nome del feed se il feed è con ambito progetto. Se il feed è con ambito organizzazione, è necessario specificare solo il nome del feed. Altre informazioni

Pubblicare la distribuzione di Python nel registro Python ufficiale

In questo esempio si configura l'autenticazione per la pubblicazione nel Registro Python ufficiale. Creare una voce di connessione del servizio gemello per pypi. L'attività di autenticazione usa la connessione al servizio per creare un .pypirc file contenente le credenziali di autenticazione necessarie per pubblicare la distribuzione.

# 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

Requisiti

Requisito Descrizione
Tipi di pipeline YAML, build classica, versione classica
Esecuzione in Agente, DeploymentGroup
Richieste Nessuno
Capabilities Questa attività non soddisfa le richieste per le attività successive nel processo.
Restrizioni dei comandi Qualsiasi
Variabili impostabili Qualsiasi
Versione agente 2.144.0 o versione successiva
Categoria attività Pacchetto
Requisito Descrizione
Tipi di pipeline YAML, build classica, versione classica
Esecuzione in Agente, DeploymentGroup
Richieste Nessuno
Capabilities Questa attività non soddisfa le richieste per le attività successive nel processo.
Restrizioni dei comandi Qualsiasi
Variabili impostabili Qualsiasi
Versione agente 2.120.0 o versione successiva
Categoria attività Pacchetto