Delen via


Aan de slag met Cargo-pakketten in Azure Artifacts

Azure DevOps Services | Azure DevOps Server 2022

Met Behulp van Azure Artifacts kunt u Cargo-pakketten publiceren en downloaden naar feeds en openbare registers. In dit artikel wordt u begeleid bij het instellen van uw project en het publiceren van uw Cargo-pakketten naar uw Azure Artifacts-feed.

Prerequisites

  • Een Azure DevOps-organisatie en een project. Maak een organisatie of een project als u dat nog niet hebt gedaan.

  • Download en installeer rustup.

Een feed maken

Als u al een bestaande Azure Artifacts-feed hebt die kan worden gebruikt voor Cargo, kunt u naar de volgende sectie gaan.

Notitie

Azure Artifacts raadt aan om een afzonderlijke feed te gebruiken voor het verbruik van kratten uit crates.io en een afzonderlijke feed uitsluitend voor het publiceren van interne kratten.

  1. Meld u aan bij uw Azure DevOps-organisatie en navigeer vervolgens naar uw project.

  2. Selecteer Artefacten en selecteer Feed maken.

  3. Geef uw feed een naam en geef de zichtbaarheid op. Schakel het selectievakje Upstream-bronnen in als u pakketten uit openbare registers wilt opnemen en selecteer vervolgens een bereik voor uw feed.

  4. Selecteer Maken wanneer u klaar bent.

Verbinding maken met een feed

  1. Meld u aan bij uw Azure DevOps-organisatie en navigeer vervolgens naar uw project.

  2. Selecteer Artefacten en selecteer vervolgens uw feed in de vervolgkeuzelijst.

  3. Select Connect to feed, and then select Cargo from the tool selection pane.

  4. Volg de installatie-instructies van Project op de pagina Verbinding maken met feed .

Belangrijk

Cargo-ondersteuning in Azure Artifacts vereist Rust-versie 1.74 of hoger, inclusief ondersteuning voor de functie 'registry-auth'. To update your rust version, run rustup update

Belangrijk

Cargo is currently in preview and may require the nightly toolchain with the registry-authunstable-feature enabled. Als u dit wilt inschakelen registry-auth, voegt u het volgende toe aan .cargo/config.toml.

[unstable]
registry-auth = true

Voer de volgende opdracht uit om de nightly toolchain te gebruiken:

rustup default nightly

Pakketten publiceren

Als u uw Cargo-pakket wilt publiceren, voert u de volgende opdracht uit in uw projectmap:

cargo publish

If you encounter GLib-GObject-CRITICAL - libsecret-CRITICAL error, make sure you follow these steps:

  1. Verify libsecret is installed:

    sudo apt update && sudo apt install libsecret-1-0
    
  2. Make sure gnome-keyring is running:

    gnome-keyring-daemon --start --components=secrets
    
  3. Update Rust to the latest stable version and set stable as the default toolchain:

    rustup update  
    rustup default stable  
    
  4. You should also run cargo publish with verbose logging to get more details:

    RUST_LOG=debug cargo publish --registry <REGISTRY_NAME>