Partager via


Publier des artefacts Maven avec Azure Pipelines (YAML/Classic)

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

Azure Pipelines permet aux développeurs de publier des artefacts Maven dans des flux Azure Artifacts au sein de la même organisation, dans d’autres organisations et dans des registres publics tels que Maven Central. Cet article vous guide tout au long de la publication de vos artefacts Maven à l’aide de pipelines YAML et Classic.

Prerequisites

Produit Exigences
Azure DevOps - Une organisation Azure DevOps et un projet.
- Un flux Azure Artifacts.
- Un pipeline opérationnel.
- Autorisations:
    - Pour accorder l'accès à tous les pipelines du projet, vous devez être membre du groupe Administrateurs du projet.
    - Pour créer des connexions de service, vous devez avoir le rôle d'administrateur ou de créateur de connexions de service.

Publier des packages sur un flux dans la même organisation

  1. Connectez-vous à votre organization Azure DevOps, puis accédez à votre projet.
  1. Connectez-vous à votre collection Azure DevOps puis accédez à votre projet.
  1. Sélectionnez Pipelines, puis sélectionnez la définition de votre pipeline.
  1. Sélectionnez Modifier, puis ajoutez l’extrait de code suivant à votre pipeline YAML :

    steps:
    - task: MavenAuthenticate@0
      displayName: 'Authenticate to Azure Artifacts feed'
      inputs:
        artifactsFeeds: 'MavenDemo,MavenDemoFeed2'        ## Select one or multiple feeds to authenticate with.
    - script: |
       mvn deploy
      displayName: 'Publish'
    

Remarque

Pour publier des 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. Consultez la section Gérer les permissions pour plus de détails.

Publier des packages sur un flux dans une autre organisation

Pour publier des packages sur un flux dans une autre organisation Azure DevOps, vous devez d’abord créer un jeton d’accès personnel (PAT) dans l’organisation cible, puis utiliser ce mot de passe pour créer une connexion de service et vous authentifier auprès du flux cible.

Créer un jeton d’accès personnel

  1. Accédez à l’organisation qui héberge le flux cible.

  2. Créer un jeton d'accès personnel avec PackagingÉtendue> de la lecture & de l'écriture.

  3. Copiez votre jeton d’accès personnel, car vous en aurez besoin dans la section suivante.

Créer une connexion de service

  1. Connectez-vous à l’organisation Azure DevOps où votre pipeline sera exécuté, puis accédez à votre projet.

  2. Accédez aux Paramètres du projet>Connexions de service.

  3. Sélectionnez Nouvelle connexion de service, sélectionnez Maven, puis cliquez sur Suivant.

  4. Pour la méthode d’authentification, sélectionnez Nom d’utilisateur et Mot de passe. Entrez l’URL de votre dépôt et votre ID de dépôt.

  5. Dans le champ Nom d’utilisateur , entrez n’importe quelle valeur de chaîne (cela est nécessaire, mais Azure Pipelines utilise votre pom.xml configuration et le jeton d’accès personnel que vous avez créé précédemment pour l’authentification).

    • Pour mot de passe, collez le jeton d’accès personnel que vous avez créé précédemment.
    • Indiquez un nom pour votre connexion de service.
    • Cochez la case Accorder l’autorisation d’accès à tous les pipelines.
  6. Lorsque vous avez terminé, sélectionnez Enregistrer.

Publier des packages

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

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

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

    steps:
    - task: MavenAuthenticate@0
      displayName: 'Authenticate to Azure Artifacts feed'
      inputs:
        MavenServiceConnections: <NAME_OF_YOUR_SERVICE_CONNECTION> 
    
    - script: |
       mvn deploy
      displayName: 'Publish'