Partager via


Publier des packages Python avec Azure Pipelines

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

Azure Pipelines permet aux développeurs de publier des packages Python sur des flux Azure Artifacts et des registres publics tels que PyPi. Cet article vous guide tout au long de la publication de packages Python dans votre flux Azure Artifacts.

Prérequis

  • Un organization Azure DevOps et un projet. Créez un organization ou un projet si ce n’est pas déjà fait.

  • Un flux Azure Artifacts. Créez un flux si vous n’en avez pas déjà un.

S’authentifier avec un flux

Pour publier des packages Python à l’aide de twine, vous devez d’abord vous authentifier auprès de votre flux Azure Artifacts. La tâche TwineAuthenticate fournit les identifiants Twine à une PYPIRC_PATHvariable d’environnement. Cette variable est ensuite utilisée pourtwine publier des packages directement à partir de votre pipeline.

Important

Les informations d’identification stockées dans la variable d’environnement PYPIRC_PATH sont prioritaires sur celles des fichiers et .ini des .conf fichiers.

Si vous ajoutez plusieurs tâches TwineAuthenticate à différentes étapes de votre pipeline, chaque exécution de tâche s’étend (pas remplacer) la variable d’environnement existante PYPIRC_PATH .

  1. Connectez-vous à votre organisation Azure DevOps puis accédez à votre projet.

  2. Sélectionnez Pipelines, puis sélectionnez votre définition de pipeline.

  3. Sélectionnez Modifier, puis ajoutez l’extrait de code suivant à votre pipeline YAML.

    steps:
    - task: UsePythonVersion@0
      displayName: 'Use Python 3.x'
    
    - task: TwineAuthenticate@1
      inputs:
        artifactFeed: <PROJECT_NAME/FEED_NAME>     ## For an organization-scoped feed, use: artifactFeed: <FEED_NAME>
    

Publier des packages Python dans un flux

Remarque

Pour publier vos packages sur un flux à l’aide d’Azure Pipelines, assurez-vous que le service de génération de collection de projets et les identités du service de génération de votre projet sont affectés au rôle Éditeur de flux (Contributeur) dans vos paramètres de flux. Pour plus d’informations, consultez Gérer les autorisations .

  1. Connectez-vous à votre organisation Azure DevOps puis accédez à votre projet.

  2. Sélectionnez Pipelines, puis sélectionnez votre définition de pipeline.

  3. Sélectionnez Modifier, puis ajoutez l’extrait de code suivant à votre pipeline YAML.

    steps:
    - task: UsePythonVersion@0
      displayName: 'Use Python 3.x'
    
    - 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>                ## For an organization-scoped feed, use: artifactFeed: <FEED_NAME>
      displayName: 'Twine Authenticate'
    
    - script: |
        python -m twine upload -r <FEED_NAME> --config-file $(PYPIRC_PATH) dist/*.whl
      displayName: 'Upload to feed'