货物发布
此页面记录了使用下一个主要版本 dpl v2 的部署,该版本目前处于 beta 发布阶段。请参阅 我们的博客文章 了解详细信息。当前的默认版本是 dpl v1。查看 dpl v1 文档.
务必阅读 v2 部署概述.
Travis CI 可以在构建成功后自动将您的 Rust 包发布到 crates.io.
对于最小配置,请将以下内容添加到您的 .travis.yml
deploy:
provider: cargo
token: <encrypted token>
edge: true # opt in to dpl v2
可以通过登录到您的 crates.io 帐户并 https://crates.io/me 上生成新的令牌来获取 API 令牌。
状态 #
对 Cargo 部署的支持是 *稳定* 的。
已知选项 #
使用以下选项进一步配置部署。
令牌 |
货物注册表 API 令牌 - **必填**、**秘密**、类型:字符串 |
允许脏 |
允许从脏的 Git 工作目录发布 - 类型:布尔值 |
共享选项 #
清理 |
在部署之前从 Git 工作目录清理构建工件 - 类型:布尔值 |
运行 |
在部署成功完成之后要执行的命令 - 类型:字符串或字符串数组 |
环境变量 #
如果所有选项以 CARGO_
为前缀,则可以作为环境变量提供。
例如,token
可以作为 CARGO_TOKEN=<token>
提供。
保护秘密 #
秘密选项值应作为您的构建配置(.travis.yml
文件)中的加密字符串或存储库设置中的环境变量提供。
环境变量可以在存储库的设置页面上设置,也可以使用 travis env set
设置。
travis env set CARGO_TOKEN <token>
为了在将选项值添加到 .travis.yml
文件时对其进行加密,请使用 travis encrypt
travis encrypt <token>
或者使用 --add
将其直接添加到 .travis.yml
文件中。请注意,此命令必须在存储库的根目录中运行。
travis encrypt --add deploy.token <token>
部署标签 #
最有可能的是,您只希望在您包的新版本发布时进行部署。
为此,您可以包含一个 tags
条件,如下所示。
deploy:
provider: cargo
# ⋮
on:
tags: true
如果您在本地标记提交,请记住运行 git push --tags
以确保您的标签已上传到 GitHub。
拉取请求 #
请注意,拉取请求构建完全跳过部署步骤。