Partager via


Connecter votre projet Cargo à un flux Azure Artifacts

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

Cet article vous guide tout au long de la configuration de votre projet Cargo, de la configuration du fournisseur d’informations d’identification et de la connexion à un flux Azure Artifacts.

Conditions préalables

Produit Exigences
Azure DevOps - Une organisation Azure DevOps .
- Un projet Azure DevOps .
- Télécharger et installer rustup. Vous aurez besoin de Cargo version 1.74.0 ou ultérieure.

Configuration du projet

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

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

  3. Sélectionnez Se connecter au flux, puis sélectionnez Cargo dans le volet de navigation gauche.

  4. Ajoutez l’extrait de code fourni à votre cargo/config.toml dans votre référentiel source. Votre fichier config.toml doit ressembler à ce qui suit :

    • Flux à l'échelle du projet :

      [registries]
      FEED_NAME = { index = "sparse+https://pkgs.dev.azure.com/ORGANIZATION_NAME/PROJECT_NAME/_packaging/FEED_NAME/Cargo/index/" }
      
    • Flux à l'échelle de l'organisation :

      [registries]
      FEED_NAME = { index = "sparse+https://pkgs.dev.azure.com/ORGANIZATION_NAME/_packaging/FEED_NAME/Cargo/index/" }
      
  5. Ajoutez l’extrait de code suivant à votre cargo/config.toml pour remplacer la source crates.io par votre flux. Remplacez l’espace réservé par le nom de votre flux :

    [source.crates-io]
    replace-with = "FEED_NAME"
    

Configurer un fournisseur d’informations d’identification

Pour utiliser Cargo avec Azure Artifacts, vous devez d’abord configurer un assistance d’informations d’identification par défaut. Pour plus d’informations, consultez The Cargo Book.

Ajoutez l’extrait de code suivant à votre %USERPROFILE%.cargo\config.toml. Cela définit l'assistance des informations d’identification par défaut pour l’utilisateur :

[registry]
global-credential-providers = ["cargo:token", "cargo:wincred"]

Connectez-vous au Registre

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

  2. Générez un jeton d'accès personnel avec les étendues Packaging>Lecture et écriture pour vous authentifier auprès de votre flux.

  3. Exécutez la commande suivante pour vous connecter à votre registre. Remplacez l’espace réservé par le nom de votre flux et fournissez le jeton d’accès personnel que vous avez créé précédemment lorsque vous y êtes invité :

"Basic " + [Convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes("PAT:" + (Read-Host -MaskInput "Enter PAT"))) | cargo login --registry <FEED_NAME>

Étapes suivantes