前提条件
必要なもの:
- chocolatey パッケージ マネージャーがインストールされていること
- (公開用)
bazel
パッケージを公開する権限を付与するチョコレートのような API キー- 現在、@petemounce がこの非公式パッケージを管理しています。
- (公開用)
choco apikey -k <your key here> -s https://chocolatey.org/
を介して、チョコレートのようなソースの 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
スクリプトは mode
の値 local
、rc
、release
をサポートします。
テスト
パッケージをビルドする(
-mode local
を使用)- ウェブサーバーを実行する(
scripts/packages/chocolatey
のpython -m SimpleHTTPServer
が便利で、http://localhost:8000
で起動)
- ウェブサーバーを実行する(
インストールをテストする
test.ps1
によってパッケージがクリーンにインストールされ(正常にインストールされなかった場合はエラーになります)、次のステップが示されます。アンインストールをテストする
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 は自動チェックを実行し、push に対してメンテナンス担当者にメールで応答します。