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 からクレートを使用するために個別のフィードを使用し、内部クレートを発行する場合にのみ別のフィードを使用することをお勧めします。
Azure DevOps 組織にサインインしてから、プロジェクトに移動します。
[ Artifacts]\(成果物\) を選択し、フィードを作成します。
フィードに Name を指定し、その Visibilityを指定します。 パブリック レジストリからパッケージを含める場合は、 Upstream ソース チェック ボックスをオンにし、フィードの Scope を選択します。
終わったら [作成] を選択します。
フィードに接続する
Azure DevOps 組織にサインインしてから、プロジェクトに移動します。
[ 成果物] を選択し、ドロップダウン メニューからフィードを選択します。
[フィードする接続] 選択しツールの選択ウィンドウから Cargo を選択します。
プロジェクトのセットアップフィードへの接続ページの手順に従います。
重要
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エラーが発生した場合は、次の手順に従ってください。
libsecret がインストールされていることを確認します。
sudo apt update && sudo apt install libsecret-1-0gnome-keyring が実行されていることを確認します。
gnome-keyring-daemon --start --components=secretsRust を最新の安定バージョンに更新し、既定のツールチェーンとして stable を設定します。
rustup update rustup default stable詳細ログを有効にしてcargo publishを実行すると、さらに詳しい情報を得ることができます。
RUST_LOG=debug cargo publish --registry <REGISTRY_NAME>