Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022
En utilisant Azure Artifacts, vous pouvez publier et restaurer des packages Cargo à partir de vos propres flux et registres publics tels que crates.io. Utilisez Azure Artifacts pour héberger des caisses internes, vous connecter aux registres en amont et gérer l’accès aux packages à partir d’un seul flux. Ce guide de démarrage rapide vous guide tout au long de la création d’un flux, de la configuration de votre projet Cargo et de la publication et de la consommation de packages Cargo à l’aide de Azure Artifacts.
Prérequis
| Produit | Exigences |
|---|---|
| Azure DevOps | - Une Azure DevOps organisation. - Un projet Azure DevOps . - Télécharger et installer rustup. Vous avez besoin de Cargo 1.74.0 ou version ultérieure. |
Créer un flux
Si vous disposez déjà d’un flux Azure Artifacts, accédez à la section suivante. Dans le cas contraire, procédez comme suit pour créer un flux. Azure Artifacts recommande d’utiliser un flux pour consommer des crates provenant de registres publics tels que crates.io, et un flux distinct pour publier des crates internes.
Connectez-vous à Azure DevOps, puis accédez à votre projet.
Sélectionnez Artifacts, puis sélectionnez Créer un flux.
Entrez un nom pour votre flux, choisissez sa visibilité, puis sélectionnez une étendue. Vérifiez que vous activez la case à cocher Sources en amont pour inclure des packages à partir de registres publics.
Sélectionnez Créer lorsque vous avez terminé.
Se connecter à un flux
Avant de pouvoir publier ou restaurer des packages à partir de votre flux, vous devez d’abord configurer votre projet pour s’authentifier et se connecter au flux.
Connectez-vous à Azure DevOps, puis accédez à votre projet.
Sélectionnez Artefacts, puis sélectionnez votre flux dans le menu déroulant.
Sélectionnez Se connecter au flux, puis sélectionnez Cargo dans le volet de navigation gauche.
Suivez les étapes décrites dans la section d’installation de Project pour configurer votre
config.tomlfichier.Sur la même page, suivez les instructions de la section Configurer un fournisseur d’informations d’identification et connectez-vous aux sections du Registre pour configurer le fournisseur d’informations d’identification et vous connecter à votre flux. Pour obtenir des étapes détaillées, consultez Cargo - Configuration du projet.
Important
La prise en charge de Cargo dans Azure Artifacts nécessite Rust 1.74 ou une version ultérieure, qui prend en charge la fonctionnalité registry-auth.
Pour mettre à jour votre version de Rust, exécutez rustup update
Important
Cargo est actuellement en aperçu et peut nécessiter la toolchain nightly avec l’registry-authoption unstable activée. Pour activer registry-auth, ajoutez le paramètre suivant à .cargo/config.toml.
[unstable]
registry-auth = true
Pour utiliser la chaîne d’outils nocturne, exécutez la commande suivante :
rustup default nightly
Publier des packages
Avant de publier un package Cargo, assurez-vous que vous avez effectué les étapes de connexion à un flux afin de pouvoir vous authentifier auprès de votre flux Azure Artifacts.
Dans le répertoire qui contient votre fichier Cargo.toml , exécutez la commande suivante pour publier votre package :
cargo publish
Si vous rencontrez GLib-GObject-CRITICAL - libsecret-CRITICAL une erreur, veillez à suivre les étapes suivantes :
Vérifiez que libsecret est installé :
sudo apt update && sudo apt install libsecret-1-0Assurez-vous que gnome-keyring est en cours d’exécution :
gnome-keyring-daemon --start --components=secretsMettez à jour Rust vers la dernière version stable et définissez stable comme chaîne d’outils par défaut :
rustup update rustup default stableSi le problème persiste, réexécutez
cargo publishavec la journalisation détaillée pour obtenir plus d’informations :RUST_LOG=debug cargo publish --registry <REGISTRY_NAME>
Restaurer des packages
Avant de restaurer les dépendances, vérifiez que vous avez effectué les étapes de connexion à un flux afin de pouvoir vous authentifier auprès de votre flux Azure Artifacts.
Vérifiez que vos dépendances sont répertoriées dans la
[dependencies]section de votreCargo.tomlfichier.Si vous consommez des packages directement depuis votre flux privé Azure Artifacts, spécifiez explicitement le registre comme suit :
[dependencies] CRATE_NAME = { version = "VERSION_NUMBER", registry = "FEED_NAME" }Si vous faites référence à des crates de crates.io via votre flux upstream à l’aide de la configuration
replace-with, indiquez-les comme suit :[dependencies] CRATE_NAME = "VERSION_NUMBER"Exécutez la commande suivante dans votre répertoire de projet pour générer votre projet et restaurer vos dépendances à partir du flux :
cargo build
Les crates téléchargées sont mises en cache localement dans ~/.cargo/registry/cache/<registry-hash>/, où registry-hash est un identifiant unique basé sur l’URL de votre flux.