Sestavení a publikování aplikace v Pythonu
Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019
V tomto rychlém startu vytvoříte kanál, který sestaví a otestuje aplikaci v Pythonu. Zjistíte, jak pomocí Azure Pipelines vytvářet, testovat a nasazovat aplikace a skripty Pythonu jako součást systému kontinuální integrace a průběžného doručování (CI/CD).
Požadavky
- Účet GitHubu, kde můžete vytvořit úložiště. Vytvořte si bezplatný účet GitHubu.
- Organizace Azure DevOps. Vytvořte si ho zdarma.
- Projekt Azure DevOps. Vytvořte ho pomocí Průvodce vytvořením projektu Azure DevOps.
- Možnost spouštět kanály na agentech hostovaných Microsoftem Potřebujete požádat o bezplatné udělení paralelních úloh nebo nákup paralelní úlohy.
Python je předinstalovaný na agentech hostovaných Microsoftem pro Linux, macOS a Windows. Pro sestavování projektů Pythonu nemusíte nic dalšího nastavovat. Pokud chcete zjistit, které verze Pythonu jsou předinstalované, přečtěte si téma Použití agenta hostovaného Microsoftem.
- Účet GitHubu, kde můžete vytvořit úložiště. Vytvořte si bezplatný účet GitHubu.
- Organizace Azure DevOps. Vytvořte si ho zdarma.
- Projekt Azure DevOps. Vytvořte ho pomocí Průvodce vytvořením projektu Azure DevOps.
- Agent v místním prostředí. Pokud ho chcete vytvořit, podívejte se na agenty v místním prostředí.
- Python je nainstalovaný na vašem místním agentu. Pokud chcete nainstalovat Python do svého agenta, přečtěte si téma UsePythonVersion.
Vytvoření forku vzorového kódu
Vytvoření forku ukázkového úložiště Pythonu do účtu GitHubu
- Přejděte do úložiště python-sample-vscode-flask-tutorial .
- V pravém horním rohu stránky vyberte Fork .
- Vyberte svůj účet GitHubu. Ve výchozím nastavení má fork stejný název jako nadřazené úložiště, ale můžete ho pojmenovat jinak.
Důležité
Během následujících postupů se může zobrazit výzva k vytvoření připojení ke službě GitHub nebo přesměrování na GitHub, abyste se mohli přihlásit, nainstalovat Azure Pipelines nebo autorizovat Azure Pipelines. Dokončete proces podle pokynů na obrazovce. Další informace najdete v tématu Přístup k úložištím GitHub.
Vytvoření kanálu
- V projektu Azure DevOps vyberte Pipelines>Create Pipeline a pak jako umístění zdrojového kódu vyberte GitHub.
- Na obrazovce Vybrat úložiště vyberte vaše rozvětvované ukázkové úložiště.
- Na obrazovce Konfigurace kanálu vyberte Počáteční kanál.
Přizpůsobení kanálu
Na obrazovce Zkontrolovat kanál YAML nahraďte obsah vygenerovaného souboru azure-pipelines.yml následujícím kódem. Kód:
- Nainstaluje požadované verze a závislosti Pythonu.
- Balíčky vytvářejí artefakty do archivu ZIP.
- Publikuje archiv do kanálu.
- Spouští testy.
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'
Přizpůsobte azure-pipelines.yml tak, aby odpovídaly konfiguraci projektu.
- Pokud máte jiný fond agentů, změňte parametr fondu
name
. - V případě potřeby změňte verzi Pythonu na verzi nainstalovanou v místním agentu.
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'
Spuštění kanálu
Vyberte Uložit a spusťte a pak vyberte Uložit a spustit znovu.
Na kartě Souhrn se zobrazuje stav spuštění kanálu.
Pokud chcete zobrazit artefakt sestavení, vyberte publikovaný odkaz na kartě Souhrn.
Na stránce Artefakty se zobrazují publikované artefakty sestavení.
Na stránce Artefakty se zobrazují publikované artefakty sestavení.
Pokud chcete zobrazit výsledky testu, vyberte kartu Testy .
Vyberte Spustit.
Číslo sestavení se zobrazí v horní části stránky. Výběrem čísla buildu zobrazíte podrobnosti o sestavení.
Na kartě Souhrn se zobrazuje stav spuštění kanálu.
Pokud chcete stáhnout artefakt sestavení, vyberte odkaz pro přetažení z publikované části Artefakty sestavení.
Pokud chcete zobrazit výsledky testu, vyberte kartu Testy .
Vyčištění
Po dokončení tohoto rychlého startu můžete odstranit projekt Azure DevOps, který jste vytvořili.
- V projektu vyberte ikonu ozubeného kolečka nastavení projektu v levém dolním rohu stránky.
- V dolní části stránky Přehled projektu vyberte Odstranit.
- Zadejte název projektu a vyberte Odstranit.
Blahopřejeme, úspěšně jste vytvořili a spustili kanál, který vytvořil a otestoval aplikaci v Pythonu. Teď můžete pomocí Azure Pipelines vytvářet, testovat a nasazovat aplikace a skripty Pythonu jako součást systému kontinuální integrace a průběžného doručování (CI/CD).