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 |