Veröffentlichen von Python-Paketen mit Azure Pipelines
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019
Mithilfe von Azure Pipelines können Entwickler*innen Python-Pakete in Azure Artifacts-Feeds, öffentlichen Registrierungen veröffentlichen oder als Pipelineartefakte speichern. In diesem Artikel erfahren Sie, wie Sie:
- Installieren der erforderlichen Komponenten
- Eine Verbindung mit einem Azure Artifacts-Feed herstellen
- Veröffentlichen von Python-Paketen in einem Azure Artifacts-Feed
Voraussetzungen
Ein Azure DevOps-organization und ein Projekt. Erstellen Sie ein organization oder ein Projekt, falls noch nicht geschehen.
Ein Azure Artifacts-Feed. Erstellen Sie einen Feed , wenn Sie noch keinen haben.
Authentifizieren mit Azure Artifacts
Um mit twine
Ihre Python-Pakete zu veröffentlichen, müssen Sie sich zuerst mit Ihrem Azure Artifacts-Feed authentifizieren. Die TwineAuthenticate-Aufgabe bietet Twine-Anmeldeinformationen in einer PYPIRC_PATH
-Umgebungsvariablen. Diese Variable wird dann vontwine
verwendet, um die Veröffentlichung Ihrer Pakete direkt aus Ihrer Pipeline zu erleichtern.
- task: TwineAuthenticate@1
inputs:
artifactFeed: <PROJECT_NAME/FEED_NAME> ## For an organization-scoped feed, artifactFeed: <FEED_NAME>
Wichtig
Die in der Umgebungsvariablen PYPIRC_PATH
gespeicherten Anmeldeinformationen ersetzen die Anmeldeinformationen in Ihren .ini
- und .conf
-Dateien.
Wenn Sie mehrere TwineAuthenticate-Aufgaben in verschiedenen Stages ihrer Pipeline hinzufügen, wird die vorhandene Umgebungsvariable PYPIRC_PATH
durch jede zusätzliche Aufgabenausführung erweitert (nicht außer Kraft gesetzt).
Veröffentlichen von Python-Paketen in einem Azure Artifacts-Feed
- script: |
pip install build
pip install twine
displayName: 'Install build and twine'
- script: |
python -m build -w
displayName: 'Python build'
- task: TwineAuthenticate@1
inputs:
artifactFeed: <PROJECT_NAME/FEED_NAME>
displayName: 'Twine Authenticate'
- script: |
python -m twine upload -r <FEED_NAME> --config-file $(PYPIRC_PATH) dist/*.whl
displayName: 'Upload to feed'
Hinweis
Um Ihre Pakete mithilfe von Azure Pipelines in einem Feed zu veröffentlichen, muss sowohl demBuilddienst für die Projektsammlung als auch den Builddienstidentitäten Ihres Projekts in Ihren Feedeinstellungen die Rolle Feedherausgeber (Mitwirkender) zugewiesen sein. Details finden Sie unter Verwalten von Berechtigungen.