Udostępnij za pośrednictwem


Rozpoczynanie pracy z pakietami cargo w usłudze Azure Artifacts

Azure DevOps Services | Azure DevOps Server 2022

Using Azure Artifacts, you can publish and download Cargo packages to feeds and public registries. Ten artykuł przeprowadzi Cię przez proces konfigurowania projektu i publikowania pakietów Cargo w kanale informacyjnym usługi Azure Artifacts.

Wymagania wstępne

  • Organizacja i projekt usługi Azure DevOps. Utwórz organizację lub projekt, jeśli jeszcze tego nie zrobiono.

  • Pobierz i zainstaluj rustup.

Tworzenie kanału informacyjnego

Jeśli masz już istniejące źródło danych usługi Azure Artifacts, które może być używane dla ładunku, możesz przejść do następnej sekcji.

Uwaga

Azure Artifacts recommends using a distinct feed for consuming crates from crates.io, and a separate feed exclusively for publishing internal crates.

  1. Zaloguj się do organizacji usługi Azure DevOps, a następnie przejdź do projektu.

  2. Wybierz pozycję Artefakty, a następnie wybierz pozycję Utwórz kanał informacyjny.

  3. Nadaj kanałowi informacyjnemu nazwę i określ jego widoczność. Zaznacz pole wyboru Nadrzędne źródła, jeśli chcesz uwzględnić pakiety z publicznych rejestrów, a następnie wybierz zakres dla swojego kanału.

  4. Po zakończeniu wybierz pozycję Utwórz .

Połącz się z kanałem

  1. Zaloguj się do organizacji usługi Azure DevOps, a następnie przejdź do projektu.

  2. Wybierz pozycję Artefakty, a następnie wybierz swój kanał z menu rozwijanego.

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

  4. Postępuj zgodnie z instrukcjami konfiguracji programu Project na stronie Łączenie z kanałem informacyjnym .

Ważne

Cargo support in Azure Artifacts requires rust version 1.74 or newer which includes support for the 'registry-auth' feature. Aby zaktualizować wersję języka Rust, uruchom polecenie rustup update

Ważne

Cargo is currently in preview and may require the nightly toolchain with the registry-authunstable-feature enabled. Aby włączyć registry-auth, dodaj następujący kod do pliku .cargo/config.toml.

[unstable]
registry-auth = true

Aby użyć nocnego łańcucha narzędzi, uruchom następujące polecenie:

rustup default nightly

Publikowanie pakietów

Aby opublikować pakiet Cargo, uruchom następujące polecenie w katalogu projektu:

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>