在 Windows 上维护 Bazel Chocolatey 软件包

报告问题 查看来源 Nightly · 8.3 · 8.2 · 8.1 · 8.0 · 7.6

前提条件

您需要:

  • 已安装 chocolatey 软件包管理系统
  • (用于发布)授予您发布 bazel 软件包权限的 Chocolatey API 密钥
    • @petemounce 目前维护着这个非官方软件包。
  • (发布时)已通过 choco apikey -k <your key here> -s https://chocolatey.org/ 为 Chocolatey 源在本地设置了该 API 密钥

构建

使用 msys2 shell 和 compile.sh 编译 bazel。

pushd scripts/packages/chocolatey
  ./build.ps1 -version 0.3.2 -mode local
popd

应导致创建 scripts/packages/chocolatey/bazel.<version>.nupkg

build.ps1 脚本支持 modelocalrcrelease

测试

  1. 构建软件包(使用 -mode local

    • 运行 Web 服务器(python -m SimpleHTTPServer 中的 scripts/packages/chocolatey 非常方便,可在 http://localhost:8000 上启动一个 Web 服务器)
  2. 测试安装

    test.ps1 应该会顺利安装软件包(如果未顺利安装,则会报错),然后告知您下一步该怎么做。

  3. 测试卸载

    choco uninstall bazel
    # should remove bazel from the system
    

Chocolatey 的审核流程也会在此处自动执行检查。

版本

在发布版本已发布到 GitHub 版本后,修改新发布版本的 URI 和校验和的 tools/parameters.json

./build.ps1 -version <version> -isRelease
./test.ps1 -version <version>
# if the test.ps1 passes
choco push bazel.x.y.z.nupkg --source https://chocolatey.org/

然后,Chocolatey.org 会运行自动检查,并通过电子邮件向维护人员回复推送。