Créer des applications Python

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019

Vous pouvez utiliser Azure Pipelines pour générer, tester et déployer des applications et des scripts Python dans le cadre de votre système CI/CD.

Dans ce guide de démarrage rapide, vous apprendrez à créer un pipeline pour construire et tester une application Python.

Vous n’avez rien à configurer pour qu’Azure Pipelines crée des projets Python. Python est préinstallé sur les agents de build hébergés par Microsoft pour Linux, macOS ou Windows. Pour savoir quelles versions de Python sont préinstallées, consultez Utiliser un agent hébergé par Microsoft.

Prérequis

  • Un compte GitHub dans lequel vous pouvez créer un référentiel. Créez-en un gratuitement.
  • Une organisation Azure DevOps. Créez-en un gratuitement.
  • Un projet Azure DevOps. Créez-en un à l’aide de l’Assistant Création de projet Azure DevOps.
  • Possibilité d’exécuter des pipelines sur des agents hébergés par Microsoft. Vous pouvez acheter un travail parallèle ou demander un niveau gratuit.

1. Dupliquez (fork) l’exemple de code

Dupliquez le référentiel d’exemple Python sur votre compte GitHub.

  1. Rendez-vous dans le référentiel python-sample-vscode-flask-tutorial.
  2. Sélectionnez Dupliquer (Fork) dans le coin supérieur droit de la page.
  3. Choisissez le compte GitHub où vous souhaitez faire la copie du référentiel, et donnez un nom à votre référentiel dupliqué.

2. Créez votre pipeline

  1. Allez sur Azure Pipelines et sélectionnez Commencer gratuitement. Si nécessaire, connectez-vous à votre compte DevOps.

  2. Rendez-vous dans votre projet et sélectionnez Pipelines>Créer un pipeline.

  3. Sélectionnez GitHub comme emplacement de votre code source.

  4. Si vous êtes redirigé vers GitHub pour vous connecter, entrez vos informations d’identification GitHub.

  5. Lorsque la liste des référentiels apparaît, sélectionnez votre référentiel copié.

  6. Dans l’onglet Configurer votre pipeline, sélectionnez Pipeline de démarrage.

  1. Dans un navigateur, rendez-vous sur votre collection DevOps Server.

  2. Accédez à votre projet et sélectionnez Pipelines>Créer un pipeline.

  3. Sélectionnez GitHub Enterprise Server comme emplacement de votre code source.

  4. Si vous êtes redirigé vers GitHub pour vous connecter, entrez vos informations d’identification GitHub.

  5. Lorsque la liste des référentiels apparaît, sélectionnez votre référentiel copié.

  6. Dans l’onglet Configurer votre pipeline, sélectionnez Pipeline de démarrage.

3. Personnalisez votre pipeline

Remplacez le contenu généré du fichier azure-pipelines.yml par le code suivant. Ce code installe la version Python requise et ses dépendances, emballe le package Python dans un fichier zip publié sur votre pipeline, et exécute les tests.

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'

Personnalisez le azure-pipelines.yml pour correspondre à la configuration de votre projet.

  1. Remplacez le YAML généré par le code suivant. Ce code installe la version Python requise et ses dépendances, emballe le package Python dans un fichier zip publié sur votre pipeline, et exécute les tests.
  2. Si vous utilisez un pool d’agents différent, modifiez le paramètre de pool name.
  3. Changez la version Python pour correspondre à une version installée sur votre agent auto-hébergé.
  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'

4. Exécutez votre pipeline

Enregistrez et exécutez votre pipeline.

  1. Sélectionnez Enregistrer et exécuter.
  2. Dans la boîte de dialogue Enregistrer et exécuter, sélectionnez Enregistrer et exécuter.
  3. Depuis l’onglet Résumé, vous pouvez voir le statut de l’exécution de votre pipeline.
  1. Sélectionnez Exécuter.
  2. Le numéro de build est affiché en haut de la page. Sélectionnez-le pour voir les détails de la build.

Capture d’écran du lien de génération de pipeline.

Capture d’écran des tâches Python terminées.

Pour afficher votre artefact de build. Sélectionnez le lien publié dans l’onglet Résumé.

Capture d’écran du lien des artefacts de build publiés.

La page Artefacts montre les artefacts de build publiés.

Capture d’écran des artefacts de build publiés.

Pour voir les résultats des tests, sélectionnez l’onglet Tests.

Capture d’écran des résultats des tests du pipeline.

L’onglet Résumé montre l’état de l’exécution de votre pipeline.

Capture d’écran du travail Python terminé.

Pour voir votre artefact de build, sélectionnez le lien publié dans l’onglet Résumé.

Capture d’écran du lien des artefacts de build publiés.

Pour voir les résultats des tests, sélectionnez l’onglet Tests.

Capture d’écran des résultats des tests du pipeline.

L’onglet Résumé montre l’état de l’exécution de votre pipeline.

Capture d’écran du travail Python terminé.

Pour télécharger votre artefact de build, sélectionnez le lien drop dans la section Artefacts de build publiés.

Pour voir les résultats des tests, sélectionnez l’onglet Tests.

Capture d’écran des résultats des tests du pipeline.

Nettoyage

Lorsque vous avez terminé ce guide de démarrage rapide, vous pouvez supprimer le projet que vous avez créé dans Azure DevOps.

  1. Sélectionnez l’icône d’engrenage des Paramètres du projet dans le coin inférieur gauche de la page.
  2. En bas de la page Vue d’ensemble du projet, sélectionnez Supprimer.
  3. Saisissez le nom du projet et sélectionnez Supprimer.

Félicitations, vous avez terminé avec succès ce guide de démarrage rapide !

Étapes suivantes