次の方法で共有


Cargo プロジェクトを Azure Artifacts フィードに接続する

Azure DevOps Services | Azure DevOps Server 2022

この記事では、Cargo プロジェクトの設定、資格情報プロバイダーの構成、Azure Artifacts フィードへの接続について説明します。

前提 条件

製品 要件
Azure DevOps - Azure DevOps 組織
- Azure DevOps プロジェクト
- rustup ダウンロードしてインストールします。 Cargo バージョン 1.74.0 以降が必要です。

プロジェクトのセットアップ

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

  2. アーティファクトを選択し、その後ドロップダウンメニューからフィードを選択します。

  3. 最初に 接続 を選択してにフィードし、それから左側のナビゲーションペインで Cargo を選択します。

  4. 指定したスニペットをソース リポジトリの cargo/config.toml に追加します。 config.toml ファイルは次のようになります。

    • プロジェクト スコープのフィード:

      [registries]
      FEED_NAME = { index = "sparse+https://pkgs.dev.azure.com/ORGANIZATION_NAME/PROJECT_NAME/_packaging/FEED_NAME/Cargo/index/" }
      
    • 組織スコープのフィード:

      [registries]
      FEED_NAME = { index = "sparse+https://pkgs.dev.azure.com/ORGANIZATION_NAME/_packaging/FEED_NAME/Cargo/index/" }
      
  5. cargo/config.toml に次のスニペットを追加し、crates.io ソースをあなたのフィードに置き換えます。 プレースホルダーをフィード名に置き換えます。

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

資格情報プロバイダーを構成する

Azure Artifacts で Cargo を使用するには、最初に既定の資格情報ヘルパーを設定する必要があります。 詳細については、Cargo Book を参照してください。

%USERPROFILE%.cargo\config.tomlに次のスニペットを追加します。 これにより、ユーザーの既定の資格情報ヘルパーが設定されます。

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

レジストリにログインする

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

  2. パッケージ>読み取り & 書き込み スコープを使用して、個人用アクセス トークンを生成し、フィードで認証します。

  3. 次のコマンドを実行して、レジストリにログインします。 プレースホルダーをフィードの名前に置き換え、メッセージが表示されたら先ほど作成した個人用アクセス トークンを指定します。

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

次の手順