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 シェルと 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 を使用)

    • ウェブサーバーを実行する(scripts/packages/chocolateypython -m SimpleHTTPServer が便利で、http://localhost:8000 で起動します)
  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 は自動チェックを実行し、メールでプッシュに対するレスポンスをメンテナーに送信します。