پیش نیازها
تو نیاز داری:
- مدیر بسته شکلاتی نصب شد
- (برای انتشار) یک کلید API شکلاتی که به شما اجازه انتشار بسته
bazel
را می دهد- @petemounce در حال حاضر این بسته غیر رسمی را حفظ می کند.
- (برای انتشار) برای تنظیم آن کلید API برای منبع شکلاتی به صورت محلی از طریق
choco apikey -k <your key here> -s https://chocolatey.org/
ساختن
bazel را با پوسته msys2 و compile.sh
کنید.
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
)- یک وب سرور را اجرا کنید (
python -m SimpleHTTPServer
درscripts/packages/chocolatey
راحت است و یکی را در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 سپس چکهای خودکار را اجرا میکند و از طریق ایمیل به نگهبانها به فشار پاسخ میدهد.