Ön koşullar
Gerekenler:
- chocolatey paket yöneticisi yüklü olmalıdır.
- (yayınlamak için)
bazelpaketini yayınlama izni veren bir Chocolatey API anahtarı- @petemounce şu anda bu resmi olmayan paketi sürdürüyor.
- (yayınlamak için)
choco apikey -k <your key here> -s https://chocolatey.org/aracılığıyla çikolatalı kaynak için API anahtarını yerel olarak ayarlamış olmanız gerekir.
Derleme
Bazel'i msys2 kabuğu ve compile.sh ile derleyin.
pushd scripts/packages/chocolatey
./build.ps1 -version 0.3.2 -mode local
popd
scripts/packages/chocolatey/bazel.<version>.nupkg oluşturulmalıdır.
build.ps1 komut dosyası mode değerleri local, rc ve release'i destekler.
Test
Paketi oluşturun (
-mode localile)- web sunucusu çalıştırma (
python -m SimpleHTTPServerinscripts/packages/chocolateykullanışlıdır vehttp://localhost:8000üzerinde bir sunucu başlatır)
- web sunucusu çalıştırma (
Yüklemeyi test etme
test.ps1, paketi sorunsuz bir şekilde yüklemeli (ve sorunsuz yüklenmediyse hata vermelidir), ardından bir sonraki adımda ne yapmanız gerektiğini söylemelidir.Kaldırma işlemini test etme
choco uninstall bazel # should remove bazel from the system
Chocolatey'nin denetleme süreci, buradaki kontrolleri de otomatikleştirir.
Serbest bırak
Sürüm, GitHub sürümlerinde yayınlandıktan sonra yeni sürümün URI'sini ve sağlama toplamını değiştirmek için tools/parameters.json değerini düzenleyin.
./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 daha sonra otomatik kontroller gerçekleştirir ve e-postayla push işlemine yanıt verir.