次の方法で共有


Azure Artifacts での Cargo パッケージの概要

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

Azure Artifacts を使用すると、Cargo パッケージを発行してフィードとパブリック レジストリにダウンロードできます。 この記事では、プロジェクトを設定し、Cargo パッケージを Azure Artifacts フィードに発行する方法について説明します。

前提条件

  • Azure DevOps organizationとプロジェクト。 まだ作成していない場合は、organizationまたはプロジェクトを作成します。

  • rustupをダウンロードしてインストールします。

フィードの作成

Cargo に使用できる既存の Azure Artifacts フィードが既にある場合は、次のセクションに進むことができます。

Note

Azure Artifacts では、crates.io からクレートを使用するために個別のフィードを使用し、内部クレートを発行する場合にのみ別のフィードを使用することをお勧めします。

  1. Azure DevOps 組織にサインインしてから、プロジェクトに移動します。

  2. [ Artifacts]\(成果物\) を選択し、フィードを作成します。

  3. フィードに Name を指定し、その Visibilityを指定します。 パブリック レジストリからパッケージを含める場合は、 Upstream ソース チェック ボックスをオンにし、フィードの Scope を選択します。

  4. 終わったら [作成] を選択します。

フィードに接続する

  1. Azure DevOps 組織にサインインしてから、プロジェクトに移動します。

  2. [ 成果物] を選択し、ドロップダウン メニューからフィードを選択します。

  3. [フィードする接続] 選択しツールの選択ウィンドウから Cargo を選択します。

  4. プロジェクトのセットアップフィードへの接続ページの手順に従います。

重要

Azure Artifacts での Cargo のサポートには、'registry-auth' 機能のサポートを含む rust バージョン 1.74 以降が必要です。 rust バージョンを更新するには、 rustup update

重要

Cargo は現在プレビュー段階であり、registry-authが有効になっている密にツールチェーンが必要になる場合があります。 registry-authを有効にするには、次を .cargo/config.toml に追加します。

[unstable]
registry-auth = true

夜間ツールチェーンを使用するには、次のコマンドを実行します。

rustup default nightly

パッケージの公開

Cargo パッケージを発行するには、プロジェクト ディレクトリで次のコマンドを実行します。

cargo publish

GLib-GObject-CRITICAL - libsecret-CRITICALエラーが発生した場合は、次の手順に従ってください。

  1. libsecret がインストールされていることを確認します。

    sudo apt update && sudo apt install libsecret-1-0
    
  2. gnome-keyring が実行されていることを確認します。

    gnome-keyring-daemon --start --components=secrets
    
  3. Rust を最新の安定バージョンに更新し、既定のツールチェーンとして stable を設定します。

    rustup update  
    rustup default stable  
    
  4. 詳細ログを有効にしてcargo publishを実行すると、さらに詳しい情報を得ることができます。

    RUST_LOG=debug cargo publish --registry <REGISTRY_NAME>