TwineAuthenticate@1 – Python twine upload authenticate v1 task
Använd den här uppgiften för att autentisera uppladdningar av Python-distributioner med hjälp av twine. Lägg till -r FeedName/EndpointName --config-file $(PYPIRC_PATH)
i ditt twine-uppladdningskommando. För feeds som finns i den här organisationen använder du feednamnet som lagringsplats (-r
). Annars använder du slutpunktsnamnet som definierats i tjänstanslutningen.
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 name (select below).
#pythonUploadServiceConnection: # string. Feed from external organizations.
# 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.
Ingångar
artifactFeed
-
Mitt flödesnamn (välj nedan)
string
.
Anger Azure-artefaktens flödesnamn som ska autentiseras med twine. Autentiseringsflödet måste finnas i organisationen. För feeds med projektomfattning använder du syntaxen projectName/feedNameSelect
.
artifactFeed
-
Min feed (välj nedan)
string
.
Anger Azure-artefaktens flödesnamn som ska autentiseras med twine. Autentiseringsflödet måste finnas i organisationen. För feeds med projektomfattning använder du syntaxen projectName/feedNameSelect
.
pythonUploadServiceConnection
-
feed från externa organisationer
string
.
En twine-tjänstanslutning namn från en extern organisation för att autentisera med twine. Autentiseringsuppgifterna som lagras i slutpunkten måste ha paketuppladdningsbehörigheter.
Kontrollalternativ för aktivitet
Alla aktiviteter har kontrollalternativ utöver sina aktivitetsindata. Mer information finns i Kontrollalternativ och vanliga uppgiftsegenskaper.
Utdatavariabler
Ingen.
Anmärkningar
Tillhandahåller twine
autentiseringsuppgifter till en PYPIRC_PATH
miljövariabel för byggets omfång. På så sätt kan du publicera Python-paket till feeds med twine
från din version.
- När i min pipeline ska jag köra den här uppgiften?
- Min agent finns bakom en webbproxy. Kommer TwineAuthenticate att konfigurera twine för att använda min proxy?
- Min pipeline måste komma åt en feed i ett annat projekt
När i min pipeline ska jag köra den här uppgiften?
Den här uppgiften måste köras innan du använder twine för att ladda upp Python-distributioner till en autentiserad paketkälla, till exempel Azure Artifacts. Det finns inga andra beställningskrav. Flera anrop för den här uppgiften staplar inte autentiseringsuppgifter. Varje aktivitetskörning raderar alla tidigare lagrade autentiseringsuppgifter.
Min agent finns bakom en webbproxy. Kommer TwineAuthenticate att konfigurera twine för att använda min proxy?
Nej. Även om den här uppgiften i sig fungerar bakom en webbproxy som agenten har konfigurerats för att använda, konfigurerar den inte twine för att använda proxyn.
Min pipeline måste komma åt en feed i ett annat projekt
Om pipelinen körs i ett annat projekt än det projekt som är värd för flödet måste du konfigurera det andra projektet för att bevilja läs-/skrivåtkomst till byggtjänsten. Mer information finns i Paketbehörigheter i Azure Pipelines.
Exempel
Följande exempel visar hur du publicerar python-distribution till Azure Artifacts-feed och det officiella Python-registret.
- Publicera Python-distribution till Azure Artifacts-feed
- Publicera Python-distribution till det officiella Python-registret
Publicera Python-distribution till Azure Artifacts-feed
I det här exemplet ställer vi in autentisering för publicering till en privat Azure Artifacts-feed. Autentisera-uppgiften skapar en .pypirc
fil som innehåller de autentiseringsuppgifter som krävs för att publicera en distribution till feeden.
# 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
Indata för artifactFeed
innehåller projektet och feednamnet om feeden är projektomfång. Om flödet är organisationsomfång måste endast flödesnamnet anges.
Läs mer.
Publicera Python-distribution till det officiella Python-registret
I det här exemplet konfigurerar vi autentisering för publicering till det officiella Python-registret. Skapa en twine-tjänstanslutning post för pypi. Autentisera-uppgiften använder tjänstanslutningen för att skapa en .pypirc
fil som innehåller de autentiseringsuppgifter som krävs för att publicera distributionen.
# 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
Krav
Krav | Beskrivning |
---|---|
Pipelinetyper | YAML, klassisk version, klassisk version |
Körs på | Agent, DeploymentGroup |
kräver | Ingen |
funktioner | Den här aktiviteten uppfyller inte några krav på efterföljande uppgifter i jobbet. |
Kommandobegränsningar | Vilken som helst |
variabler som kan | Vilken som helst |
Agentversion | 2.144.0 eller senare |
Aktivitetskategori | Paket |
Krav | Beskrivning |
---|---|
Pipelinetyper | YAML, klassisk version, klassisk version |
Körs på | Agent, DeploymentGroup |
kräver | Ingen |
funktioner | Den här aktiviteten uppfyller inte några krav på efterföljande uppgifter i jobbet. |
Kommandobegränsningar | Vilken som helst |
variabler som kan | Vilken som helst |
Agentversion | 2.120.0 eller senare |
Aktivitetskategori | Paket |