前提条件
必要なもの:
- 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 リリースに公開されたら、tools/parameters.json
を新しいリリースの URI とチェックサムに変更します。
./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 は自動チェックを実行し、メンテナーにメールでプッシュに返信します。