Azure DevOps Services | Azure DevOps Server 2022
使用 Azure Artifacts,你可以将 Cargo 包发布和下载到源和公共注册表。 本文将指导你设置项目并将 Cargo 包发布到 Azure Artifacts 源。
先决条件
创建源
如果你已经有可用于 Cargo 的现有 Azure Artifacts 源,则可以跳至下一部分。
注意
Azure Artifacts 建议使用不同的源来使用来自 crates.io 的箱,并使用单独的源专门用于发布内部箱。
登录到 Azure DevOps 组织,并导航到你的项目。
选择“项目”,然后选择“创建源”。
为你的源指定一个名称,并指定其可见性。 如果你想要包含来自公共注册表的软件包,请选中上游源复选框,然后为您的源选择一个范围。
完成操作后,选择“创建”。
连接到源
登录到 Azure DevOps 组织,并导航到你的项目。
选择“ 项目”,然后从下拉菜单中选择源。
选择连接到,然后从工具选择窗格中选择 Cargo。
按照连接到源页面上的项目设置说明进行操作。
重要说明
Azure Artifacts 中的 Cargo 支持需要 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-0
确保 gnome-keyring 正在运行:
gnome-keyring-daemon --start --components=secrets
将 Rust 更新到最新稳定版本并将稳定版本设置为默认工具链:
rustup update rustup default stable
你还应该运行 Cargo 发布并进行详细日志记录以获取更多详细信息:
RUST_LOG=debug cargo publish --registry <REGISTRY_NAME>