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, atteignant 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.
Conditions préalables
Une organisation Azure DevOps et un projet. Créez une organisation ou un projet si ce n’est déjà fait.
Installer l’extension Azure DevOps version 0.14.0 ou ultérieure.
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 :
Connectez-vous à votre organisation Azure DevOps, puis accédez à votre projet.
Sélectionnez Artifacts, puis sélectionnez Create feed.
Donnez un nom descriptif à votre flux et définissez sa visibilité (qui peut voir les packages dans votre flux). Définissez l’étendue de votre flux, puis cochez la case sources en amont si vous souhaitez inclure des packages à partir de registres publics.
Sélectionnez Créer lorsque vous avez terminé.
Remarque
Les flux nouvellement créés désignent par défaut le rôle du Build Service 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.
Exécutez la commande suivante pour installer l’extension Azure DevOps :
az extension add --name azure-devops
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
Connectez-vous à votre organisation Azure DevOps, puis accédez à votre projet.
Sélectionnez Artefacts, puis sélectionnez votre flux dans le menu déroulant.
Sélectionnez Connect to feed, puis sélectionnez Universal Packages dans le volet de navigation de gauche.
Suivez les instructions de la section Configuration du projet pour vous connecter à votre flux.
Exécutez la commande suivante pour vous connecter à Azure CLI :
az login
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>
Remarque
Si votre organisation utilise un pare-feu ou un serveur proxy, veillez à autoriser les URL et adresses IP du domaine Azure Artifacts .
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, 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 de ponctuation non consécutifs. La version du package doit également être en minuscules et ne doit pas inclure de métadonnées de construction (suffixe +). Voir la version sémantique pour plus de détails.
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>
Aliments pour animaux à l'échelle d'un 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
Les packages universels contenant un nombre exceptionnellement élevé de fichiers (100K+) peuvent ne pas être publiés. Dans ce cas, nous vous recommandons de regrouper les fichiers dans un zip ou archive tar pour réduire le nombre de fichiers.
Afficher les packages publiés
Connectez-vous à votre organisation Azure DevOps, puis accédez à votre projet.
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.
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>
Aliments pour animaux à l'échelle d'un 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 paramètre --file-filter
pour extraire un sous-ensemble de fichiers. Voir la référence des modèles de correspondance de fichiers pour plus de détails.
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>
Aliments pour animaux à l'échelle d'un 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 --file-filter logs/.log correspond à n’importe quel fichier contenant « logs » et se terminant par l’extension « .log » (par exemple, build_logs.log).
Télécharger 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 patch avec la version majeure 1 et la version mineure 2.
Remarque
Les caractères génériques ne sont pas pris en charge avec les versions antérieures (packages dont le numéro de version comporte un tiret).