Matoleo
Kila kifurushi kilichojengwa kutoka kwenye ghala hili kina kiingilio kinacholingana kwenye ukurasa wa GitHub Releases. Ukurasa huo ndio chanzo cha kimamlaka cha kilichosafirishwa, lini, na nini kilibadilika.
Mahali pa kupata matoleo
Section titled “Mahali pa kupata matoleo”Matoleo yote — programu za wavuti, API, na programu asilia — yameorodheshwa kwenye github.com/jonot-io/jonot/releases.
Mikataba ya lebo
Section titled “Mikataba ya lebo”Programu asilia — lebo za toleo la kisemantiki, zinazosukumwa kwa mkono na mhandisi anayekata toleo:
apps/host(kompyuta):host-v<semver>— mf.host-v1.2.3apps/native-kiosk:android-kiosk-v<semver>— mf.android-kiosk-v1.4.0apps/native-desk:android-desk-v<semver>— mf.android-desk-v1.4.0
Programu za wavuti na API — alama za kudumu zenye muhuri wa wakati zinazoundwa kiotomatiki baada ya kila upelekaji wa uzalishaji uliofanikiwa:
apps/api(Worker):api-r<YYYYMMDD-HHMM>-<sha7>— mf.api-r20260523-1542-abc1234- SPA za wavuti (programu 9):
web-<app>-r<YYYYMMDD-HHMM>-<sha7>— mf.web-admin-r20260523-1542-abc1234
Programu asilia (host, android-kiosk, android-desk)
Section titled “Programu asilia (host, android-kiosk, android-desk)”Matoleo ya vifurushi asilia yanaanzishwa kwa kusukuma lebo inayolingana na kiambishi cha kifurushi hicho. Mtiririko wa CI unajenga, kutia saini, na kuchapisha kwenye duka linalofaa, kisha kuunda GitHub Release yenye faili za binary zilizoambatanishwa.
Kukata toleo:
git tag host-v1.0.0git push origin host-v1.0.0Badilisha host na android-kiosk au android-desk inavyofaa, na ongeza
toleo lililinganie kiingilio cha versionName / libs.versions.toml katika
programu.
Kila GitHub Release kwa programu asilia inajumuisha:
- android-kiosk / android-desk — AAB iliyotiwa saini, ramani ya
ProGuard, na orodha ya mabadiliko ya Play Store
(
whatsnew-en-US.txt). - host —
.deb,.rpm,SHA256SUMS, naSHA256SUMS.asc(iliyotiwa saini na GPG).
SPA za wavuti na API
Section titled “SPA za wavuti na API”Kusukuma kwenye main kunapeleka kiotomatiki kwenye mazingira ya
maendeleo. Uzalishaji unapandishwa kwa kusukuma kwa nguvu lebo ya
toleo inayohamishika kwenda kwa commit inayotakiwa na kuisukuma:
# Peleka kila kitu (SPA zote tisa + API):git tag -f release <sha> && git push -f origin release
# Peleka API pekee:git tag -f release-api <sha> && git push -f origin release-api
# Peleka SPA moja (mf. admin):git tag -f release-admin <sha> && git push -f origin release-adminLebo ya mwamvuli ya release inapeleka SPA zote tisa na API kwa kusukuma
mara moja, ikiepuka kikomo cha GitHub kinachozuia CI wakati lebo zaidi ya
tatu zinasukumwa mara moja. Majina ya lebo yasiyotambulika yanashindwa
katika hatua ya kutatua badala ya kupeleka kimya kimya.
Alama ya toleo ya web-<app>-r… au api-r… inaundwa baada ya kila
upelekaji wa uzalishaji uliofanikiwa na kuwekwa lebo ya --prerelease ili
isihamishe beji ya “Toleo la Hivi Karibuni” la semver asilia. Alama hizi
ndizo rekodi za kimamlaka za mabadiliko — rekodi za kilichosafirishwa, si
malango.
Toleo la API pia linaambatanisha faili ya migrations.txt inayoorodhesha
kila faili la uhamishaji la D1 lililopo kwenye commit hiyo, ili uweze kujibu
“je, uhamishaji N ulisafirishwa?” kutoka kwenye kiolesura cha Releases.
Maelezo ya toleo
Section titled “Maelezo ya toleo”Maelezo ya toleo yanaundwa kiotomatiki na GitHub kutoka kwenye majina ya
maombi ya kuunganisha (pull request) yaliyounganishwa kati ya lebo ya toleo
lililopita na la sasa. Viambishi vya Conventional Commit (feat:, fix:,
perf:, …) katika majina ya PR vinapangilia mabadiliko kwa kuonekana ndani
ya mwili wa maelezo.