Publier et télécharger des packages universels dans Azure Artifacts

Azure DevOps Services

Les packages universels permettent aux développeurs de stocker un large éventail de types de packages au-delà des types traditionnels tels que NuGet, npm, packages Python, etc. À l’aide d’Azure CLI, vous pouvez publier et télécharger des packages universels directement à partir de la ligne de commande. Bien que la taille des packages publiés puisse varier, atteindre jusqu’à 4 To, elles doivent toujours maintenir l’exigence essentielle d’inclusion d’un nom et d’un numéro de version. Cet article vous guide tout au long des étapes de publication et de téléchargement des packages universels à partir de votre flux Azure Artifacts.

Prérequis

Créer un flux

Si vous disposez déjà d’un flux, vous pouvez passer à la section suivante. Dans le cas contraire, suivez les étapes ci-dessous pour créer un flux Azure Artifacts :

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

  2. Sélectionnez Artifacts, puis sélectionnez Créer un flux.

  3. Fournissez un nom descriptif pour votre flux et définissez sa visibilité (qui peut afficher les packages dans votre flux). Définissez l’étendue de votre flux, puis sélectionnez les sources en amont case activée box si vous souhaitez inclure des packages à partir de registres publics.

  4. Sélectionnez Créer lorsque vous avez terminé.

    Capture d’écran montrant comment créer un flux.

Remarque

Par défaut, les flux nouvellement créés désignent le rôle Service de build du projet en tant que Flux et Lecteur en amont (Collaborateur).

Installer l’extension Azure DevOps

L’utilisation de l’interface CLI permet de simplifier vos tâches. Avant de continuer, vérifiez que vous avez installé Azure CLI (version 2.10.1 ou ultérieure). En outre, nous devons installer l’extension Azure DevOps pour gérer les services Azure DevOps à partir de la ligne de commande.

  1. Exécutez la commande suivante pour installer l’extension Azure DevOps :

    az extension add --name azure-devops
    
  2. Si l’extension Azure DevOps est déjà installée et que vous souhaitez la mettre à jour vers la dernière version, exécutez la commande suivante :

    az extension update --name azure-devops
    

Se connecter au flux

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

  2. Sélectionnez Artefacts, puis sélectionnez votre flux dans le menu déroulant.

  3. Sélectionnez Connecter à alimenter, puis sélectionnez Packages universels dans le volet de navigation gauche.

  4. Suivez les instructions de la section Configuration de Project pour vous connecter à votre flux.

  1. Exécutez la commande suivante pour vous connecter à Azure CLI :

    az login
    
  2. Exécutez la commande suivante pour définir votre projet et votre organisation comme configuration par défaut de l’interface CLI :

    az devops configure --defaults project=<YOUR_PROJECT_NAME> organization=https://dev.azure.com/<YOUR_ORGANIZATION_NAME> 
    

Publier des packages universels

Pour publier un package universel dans votre flux, vous devez fournir un nom de package et un numéro de version.

Le nom du package doit être en minuscules, démarrer et se terminer par des lettres ou des chiffres, et contenir uniquement des lettres, des chiffres et des tirets non décochables, des traits de soulignement et des points. La version du package doit également être en minuscules et ne doit pas inclure de métadonnées de build (suffixe+). Pour plus d’informations, consultez le contrôle de version sémantique.

  1. Exécutez la commande suivante pour publier votre package universel sur votre flux :

    • Flux à l'échelle de l'organisation :

      az artifacts universal publish --organization https://dev.azure.com/<YOUR_ORGANIZATION> --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <PACKAGE_DIRECTORY> --description <PACKAGE_DESCRIPTION>
      
    • Flux à l'échelle du projet :

      az artifacts universal publish --organization https://dev.azure.com/<YOUR_ORGANIZATION> --project <PROJECT_NAME> --scope project --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <PACKAGE_DIRECTORY> --description <PACKAGE_DESCRIPTION>
      

Remarque

Si votre organisation utilise un pare-feu ou un serveur proxy, veillez à autoriser les URL et adresses IP du domaine Azure Artifacts.

Afficher les packages publiés

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

  2. Sélectionnez Artefacts, puis sélectionnez votre flux dans le menu déroulant. Une fois le processus de publication terminé, votre package doit être disponible dans votre flux.

    Capture d’écran montrant le package universel nouvellement publié.

Télécharger des packages universels

Exécutez la commande suivante pour télécharger un package universel particulier à partir de votre flux à l’aide d’Azure CLI :

  • Flux à l'échelle de l'organisation :

    az artifacts universal download --organization https://dev.azure.com/<YOUR_ORGANIZATION_NAME> --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <DOWNLOAD_PATH>
    
  • Flux à l'échelle du projet :

    az artifacts universal download --organization https://dev.azure.com/<YOUR_ORGANIZATION_NAME> --project <PROJECT_NAME> --scope project --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <DOWNLOAD_PATH>
    

Télécharger des fichiers spécifiques

Si vous souhaitez télécharger uniquement des fichiers spécifiques, utilisez le --file-filter paramètre pour extraire un sous-ensemble de fichiers. Pour plus d’informations, consultez les modèles de correspondance de fichier.

  • Flux à l'échelle de l'organisation :

    az artifacts universal download --organization https://dev.azure.com/<YOUR_ORGANIZATION_NAME> --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <DOWNLOAD_PATH> --file-filter <MATCH_PATTERN>
    
  • Flux à l'échelle du projet :

    az artifacts universal download --organization https://dev.azure.com/<YOUR_ORGANIZATION_NAME> --project <PROJECT_NAME> --scope project --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <DOWNLOAD_PATH> --file-filter <MATCH_PATTERN>
    

Exemple : par exemple, l’utilisation de journaux --file-filter/.log correspond à n’importe quel fichier avec un nom de fichier contenant « journaux » et se terminant par l’extension « .log » (par exemple, build_logs.log).

Télécharger la version la plus récente

Vous pouvez utiliser des carte * génériques pour télécharger la dernière version de vos packages universels.

Exemples :

  • --version '*': téléchargez la dernière version.

  • --version '1.*': téléchargez la dernière version avec la version majeure 1.

  • --version '1.2.*': téléchargez la dernière version du correctif avec la version majeure 1 et mineure 2.

Remarque

Les modèles wild carte ne sont pas pris en charge avec les versions préliminaires (packages avec un tiret dans leur numéro de version).