Ön koşullar
Gerekenler:
- chocolatey paket yöneticisi yüklü olmalıdır.
- (yayınlamak için)
bazel
paketini yayınlama izni veren bir Chocolatey API anahtarı- @petemounce şu anda bu resmi olmayan paketi yönetiyor.
- (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 local
ile)- web sunucusu çalıştırma (
python -m SimpleHTTPServer
inscripts/packages/chocolatey
kullanış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
bölümünü 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/
Ardından Chocolatey.org, otomatik kontroller gerçekleştirir ve e-posta yoluyla push'a yanıt verir.