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

Les packages universels offrent aux développeurs la possibilité de stocker un large éventail de types de packages qui s’étendent au-delà des packages conventionnels, tels que les packages NuGet, npm, Maven ou Python. À l’aide d’Azure CLI, vous pouvez facilement publier et télécharger des packages universels directement à partir de la ligne de commande. La taille des packages publiés peut varier, atteignant jusqu’à 4 To, mais doit toujours respecter l’exigence essentielle d’inclure un nom et un numéro de version. Cet article vous guide tout au long des étapes de publication et de téléchargement de vos packages universels dans votre flux Azure Artifacts.

Prérequis

Configuration du projet

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

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

    az extension update --name azure-devops
    
  3. Connectez-vous à Azure.

    az login
    

Conseil

Pour accéder aux locataires sans abonnements, exécutez az login --allow-no-subscription.

  1. Définissez votre projet et organization comme valeur 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

Pour publier un package universel, exécutez la commande suivante dans une invite de commandes avec élévation de privilèges. Les noms de package doivent être en minuscules, commencer et se terminer par des lettres ou des chiffres, et contenir uniquement des lettres, des chiffres et des tirets, des traits de soulignement et des points non concutifs. Les versions de package doivent être en minuscules sans métadonnées de build (+ suffixe). Pour en savoir plus sur le contrôle de version sémantique, consultez SemVer .

  • Flux étendu à 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 dans l’étendue 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>
    

Afficher les packages publiés

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

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

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

Télécharger des packages

Pour télécharger un package universel à l’aide d’Azure CLI, exécutez la commande suivante dans une invite de commandes avec élévation de privilèges.

  • Flux étendu à l’organisation :

    az artifacts universal download --organization https://dev.azure.com/<YOUR_ORGANIZATION> --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <DOWNLOAD_PATH>
    
  • Flux dans l’étendue du projet :

    az artifacts universal download --organization https://dev.azure.com/<YOUR_ORGANIZATION> --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 uniquement télécharger des fichiers spécifiques, vous pouvez utiliser le --file-filter paramètre pour télécharger un sous-ensemble de fichiers. Pour plus d’informations, consultez Informations de référence sur les modèles de correspondance de fichiers.

Exemple : --file-filter logs/.log correspond à n’importe quel fichier se terminant par des journaux et par l’extension .log (exemple : build123_logs.log).

  • Flux étendu à l’organisation :

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

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

Téléchargez la dernière version

Vous pouvez utiliser des * caractères 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 la version mineure 2.

Notes

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