TwineAuthenticate@1 - Python twine upload-verificatie v1-taak

Gebruik deze taak om uploads van Python-distributies te verifiëren met behulp van twine. Voeg toe -r FeedName/EndpointName --config-file $(PYPIRC_PATH) aan de opdracht voor het uploaden van twine. Gebruik voor feeds die aanwezig zijn in deze organisatie de naam van de feed als de opslagplaats (-r). Gebruik anders de eindpuntnaam die is gedefinieerd in de serviceverbinding.

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.

Invoerwaarden

artifactFeed - Mijn feed (selecteer hieronder)
string.

Hiermee geeft u de feednaam van het Azure-artefact op om te verifiëren met twine. De verificatiefeed moet aanwezig zijn binnen de organisatie. Gebruik de syntaxis projectName/feedNameSelectvoor feeds met projectbereik.


pythonUploadServiceConnection - Feed van externe organisaties
string.

Een verbindingsnaam van een twine-service van een externe organisatie om te verifiëren met twine. De referenties die zijn opgeslagen in het eindpunt, moeten machtigingen voor pakketupload hebben.


Opties voor taakbeheer

Alle taken hebben naast de taakinvoer besturingsopties. Zie Besturingsopties en algemene taakeigenschappen voor meer informatie.

Uitvoervariabelen

Geen.

Opmerkingen

Biedt twine referenties voor een PYPIRC_PATH omgevingsvariabele voor het bereik van de build. Hiermee kunt u Python-pakketten publiceren naar feeds vanuit twine uw build.

Wanneer moet ik deze taak uitvoeren in mijn pijplijn?

Deze taak moet worden uitgevoerd voordat u twine gebruikt om Python-distributies te uploaden naar een geverifieerde pakketbron, zoals Azure Artifacts. Er zijn geen andere volgordevereisten. Bij meerdere aanroepen van deze taak worden referenties niet gestapeld. Bij elke taakuitvoering worden alle eerder opgeslagen referenties gewist.

Mijn agent bevindt zich achter een webproxy. Wordt TwineAuthenticate ingesteld voor het gebruik van mijn proxy?

Nee. Hoewel deze taak zelf werkt achter een webproxy die uw agent is geconfigureerd voor gebruik, wordt twine niet geconfigureerd voor het gebruik van de proxy.

Mijn pijplijn moet toegang hebben tot een feed in een ander project

Als de pijplijn wordt uitgevoerd in een ander project dan het project dat als host fungeert voor de feed, moet u het andere project instellen om lees-/schrijftoegang te verlenen tot de buildservice. Zie Pakketmachtigingen in Azure Pipelines voor meer informatie.

Voorbeelden

De volgende voorbeelden laten zien hoe u python-distributie publiceert naar de Azure Artifacts-feed en het officiële Python-register.

Python-distributie publiceren naar Azure Artifacts-feed

In dit voorbeeld stellen we verificatie in voor publicatie naar een privé-Azure Artifacts-feed. De verificatietaak maakt een .pypirc bestand met de verificatiereferenties die nodig zijn om een distributie naar de feed te publiceren.

# 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

De artifactFeed invoer bevat het project en de feednaam als het projectbereik van de feed is. Als de feed een organisatiebereik heeft, moet alleen de naam van de feed worden opgegeven. Meer informatie.

Python-distributie publiceren naar het officiële Python-register

In dit voorbeeld stellen we verificatie in voor publicatie naar het officiële Python-register. Maak een verbindingsvermelding voor een twine-service voor pypi. De verificatietaak gebruikt die serviceverbinding om een .pypirc bestand te maken dat de verificatiereferenties bevat die nodig zijn om de distributie te publiceren.

# 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

Vereisten

Vereiste Beschrijving
Pijplijntypen YAML, klassieke build, klassieke release
Wordt uitgevoerd op Agent, DeploymentGroup
Eisen Geen
Functies Deze taak voldoet niet aan eventuele vereisten voor volgende taken in de taak.
Opdrachtbeperkingen Alle
Instelbare variabelen Alle
Agentversie 2.144.0 of hoger
Taakcategorie Pakket
Vereiste Beschrijving
Pijplijntypen YAML, klassieke build, klassieke release
Wordt uitgevoerd op Agent, DeploymentGroup
Eisen Geen
Functies Deze taak voldoet niet aan eventuele vereisten voor volgende taken in de taak.
Opdrachtbeperkingen Alle
Instelbare variabelen Alle
Agentversie 2.120.0 of hoger
Taakcategorie Pakket