Erstellen und Veröffentlichen einer Python-App
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019
In dieser Schnellstartanleitung erstellen Sie eine Pipeline, die eine Python-App erstellt und testet. Sie erfahren, wie Sie Mithilfe von Azure Pipelines Python-Apps und -Skripts als Teil Ihres kontinuierlichen Integrations- und Continuous Delivery-Systems (CI/CD) erstellen, testen und bereitstellen.
Voraussetzungen
- Ein GitHub-Konto, in dem Sie ein Repository erstellen können. Erstellen Sie kostenlos ein GitHub-Konto.
- Eine Azure DevOps-Organisation. Erstellen Sie ein kostenloses Konto.
- Ein Azure DevOps-Projekt. Erstellen Sie eine mithilfe des Azure DevOps-Projekterstellungs-Assistenten.
- Die Möglichkeit, Pipelines auf von Microsoft gehosteten Agents auszuführen. Sie müssen die kostenlose Gewährung paralleler Aufträge anfordern oder einen parallelen Auftrag erwerben.
Python ist auf von Microsoft gehosteten Agents für Linux, macOS und Windows vorinstalliert. Sie müssen nichts mehr einrichten, um Python-Projekte zu erstellen. Informationen dazu, welche Python-Versionen vorinstalliert sind, finden Sie unter Verwenden eines von Microsoft gehosteten Agents.
- Ein GitHub-Konto, in dem Sie ein Repository erstellen können. Erstellen Sie kostenlos ein GitHub-Konto.
- Eine Azure DevOps-Organisation. Erstellen Sie ein kostenloses Konto.
- Ein Azure DevOps-Projekt. Erstellen Sie eine mithilfe des Azure DevOps-Projekterstellungs-Assistenten.
- Ein selbst gehosteter Agent. Um einen zu erstellen, lesen Sie Selbst gehostete Agenten.
- Python wurde auf Ihrem selbst gehosteten Agent installiert. Informationen zum Installieren von Python auf Ihrem Agent finden Sie unter UsePythonVersion.
Verzweigen des Beispielcodes
Forken Sie das Python-Beispiel-Repository in Ihr GitHub-Konto.
- Gehen Sie zum Repository python-sample-vscode-flask-tutorial.
- Wählen Sie Fork in der oberen rechten Ecke der Seite.
- Wählen Sie Ihr GitHub-Konto. Standardmäßig ist die Verzweigung mit dem übergeordneten Repository identisch, aber Sie können sie anders benennen.
Wichtig
Während der folgenden Verfahren werden Sie möglicherweise aufgefordert, eine GitHub-Dienstverbindung zu erstellen oder zu GitHub umgeleitet zu werden, um sich anzumelden, Azure Pipelines zu installieren oder Azure Pipelines zu autorisieren. Folgen Sie den Anweisungen auf dem Bildschirm, um den Vorgang abzuschließen. Weitere Informationen finden Sie unter Access to GitHub Repositorys.
Erstellen Ihrer Pipeline
- Wählen Sie in Ihrem Azure DevOps-Projekt pipelines Create Pipelines aus, und wählen Sie dann GitHub als Speicherort Ihres Quellcodes>aus.
- Wählen Sie auf dem Bildschirm "Repository auswählen" Ihr Verzweigungsbeispiel-Repository aus.
- Wählen Sie im Bildschirm Pipeline konfigurieren die Option Starterpipeline aus.
Anpassen Ihrer Pipeline
Ersetzen Sie auf dem Bildschirm "YaML überprüfen" den Inhalt der generierten azure-pipelines.yml Datei durch den folgenden Code. Der Code:
- Installiert erforderliche Python-Versionen und Abhängigkeiten.
- Pakete erstellen Artefakte in ein ZIP-Archiv.
- Veröffentlicht das Archiv in Ihrer Pipeline.
- Führt Tests aus.
trigger:
- main
pool:
vmImage: ubuntu-latest
strategy:
matrix:
Python310:
python.version: '3.10'
Python311:
python.version: '3.11'
Python312:
python.version: '3.12'
steps:
- task: UsePythonVersion@0
inputs:
versionSpec: '$(python.version)'
displayName: 'Use Python $(python.version)'
- script: |
python -m pip install --upgrade pip
pip install -r requirements.txt
displayName: 'Install dependencies'
- task: ArchiveFiles@2
displayName: 'Archive files'
inputs:
rootFolderOrFile: $(System.DefaultWorkingDirectory)
includeRootFolder: false
archiveType: zip
archiveFile: $(Build.ArtifactStagingDirectory)/$(Build.BuildId)-$(python.version).zip
replaceExistingArchive: true
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: '$(Build.ArtifactStagingDirectory)'
ArtifactName: 'drop'
publishLocation: 'Container'
- script: |
pip install pytest pytest-azurepipelines
pytest
displayName: 'pytest'
Passen Sie azure-pipelines.yml an Ihre Projektkonfiguration an.
- Wenn Sie einen anderen Agenten-Pool haben, ändern Sie den
name
-Parameter des Pools. - Ändern Sie bei Bedarf die Python-Version in eine Version, die auf Ihrem selbst gehosteten Agent installiert ist.
trigger:
- main
pool:
name: '<your-pool-name or default>'
steps:
- task: UsePythonVersion@0
inputs:
versionSpec: '3.12'
displayName: 'Use Python 3.12'
- script: |
python -m pip install --upgrade pip
pip install -r requirements.txt
displayName: 'Install dependencies'
- task: ArchiveFiles@2
displayName: 'Archive files'
inputs:
rootFolderOrFile: $(System.DefaultWorkingDirectory)
includeRootFolder: false
archiveType: zip
archiveFile: $(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip
replaceExistingArchive: true
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: '$(Build.ArtifactStagingDirectory)'
ArtifactName: 'drop'
publishLocation: 'Container'
- script: |
pip install pytest pytest-azurepipelines
pytest
displayName: 'pytest'
Ausführen Ihrer Pipeline
Wählen Sie " Speichern und ausführen" aus, und wählen Sie dann "Speichern" aus, und führen Sie den Vorgang erneut aus .
Die Registerkarte Zusammenfassung zeigt den Status der Ausführung Ihrer Pipeline an.
Um Ihr Artefakt anzuzeigen, wählen Sie den Link Veröffentlicht auf der Registerkarte Zusammenfassung.
Die Seite Artefakte zeigt die veröffentlichten Build-Artefakte an.
Die Seite Artefakte zeigt die veröffentlichten Build-Artefakte an.
Um die Testergebnisse anzuzeigen, wählen Sie die Registerkarte Tests.
Klicken Sie auf Run (Ausführen).
Die Build-Nummer wird oben auf der Seite angezeigt. Wählen Sie die Build-Nummer aus, um die Details des Builds zu sehen.
Die Registerkarte Zusammenfassung zeigt den Status der Ausführung Ihrer Pipeline an.
Um Ihr Artefakt herunterzuladen, wählen Sie den Link Drop im Bereich Veröffentlichte Build-Artefakte.
Um die Testergebnisse anzuzeigen, wählen Sie die Registerkarte Tests.
Bereinigung
Wenn Sie diese Schnellstartanleitung fertig stellen, können Sie das von Ihnen erstellte Azure DevOps-Projekt löschen.
- Wählen Sie in Ihrem Projekt das Zahnradsymbol "Project-Einstellungen " in der unteren linken Ecke der Seite aus.
- Wählen Sie unten auf der Seite Projektübersicht die Option Löschen.
- Geben Sie den Projektnamen ein, und wählen Sie Löschen.
Herzlichen Glückwunsch, Sie haben erfolgreich eine Pipeline erstellt und ausgeführt, die eine Python-App erstellt und getestet hat. Jetzt können Sie Azure Pipelines zum Erstellen, Testen und Bereitstellen von Python-Apps und -Skripts als Teil Ihres kontinuierlichen Integrations- und Fortlaufendbereitstellungssystems (CI/CD) verwenden.