Relizni chop etish
Reliz — bitta o'zgarmas, versiyalangan widget.zip, yangiliklar matni va marketplace kartochkasi nusxasi. Ilovaning client_idsi doimiy qoladi; moderatsiyadan o'tadigan bajariladigan kod relizdir.
Reliz holatlari
| Holat | Ma'nosi |
|---|---|
draft | Tahrirlanadi va lokal ko'rish/sinash mumkin |
queued | Yuborilgan, moderatorni kutmoqda |
testing | Moderator tekshiruvni boshlagan |
approved | Ishlaydigan kod. Lokal yoqilgan yoki moderator tasdiqlagan bo'lishi mumkin; ommaviy ilova uchun faqat ikkinchisi yaroqli |
rejected | Sabab bilan qaytarilgan; tahrirlab qayta yuboriladi |
withdrawn | Developer navbatdan olgan; yana tahrirlanadi |
draft -> yuklash/validatsiya -> lokal saqlash
| |
+-> yuborish -> queued -> testing -> moderator tasdiqlaydi
\-> rejected -> tuzatish -> qayta yuborish
queued/testing -> qaytarib olish -> withdrawnAmallar va endpointlar
| Amal | Endpoint | Izoh |
|---|---|---|
| Yaratish | POST /admin/settings/widget/release/create | client_id, yagona semantik version, ixtiyoriy release_notes |
| Tahrirlash | POST /admin/settings/widget/release/update | Faqat tahrirlanadigan holatlar |
| Yuklash | POST /admin/settings/widget/release/upload | Multipart; _idni filedan oldin qo'shing. Arxiv faqat validatsiya o'tsa saqlanadi |
| Saqlash (lokal faollashtirish) | POST /admin/settings/widget/release/activate | Faqat private ilova; marketplace moderatsiyasisiz developer tenantida ishga tushiradi |
| Yuborish | POST /admin/settings/widget/release/submit | Tahrirlanadigan reliz → queued |
| Qaytarib olish | POST /admin/settings/widget/release/withdraw | queued/testing → withdrawn |
| Ro'yxat | POST /admin/settings/widget/release/get-paging | client_id, holat va pagination bo'yicha |
| Bittasini o'qish | POST /admin/settings/widget/release/get-by-id | { "_id": "..." } |
O'zgartiruvchi endpointlar faol developer hisobi va Bito hisob egasini talab qiladi. To'xtatilgan developer o'z relizlari tarixini o'qiy oladi.
Yuborishda nima tekshiriladi
Reliz navbatga kirishidan oldin:
- arxiv biriktirilgan bo'lishi;
- saqlangan validatsiya natijasi
ok: truebo'lishi; - ilovada tanlangan har tilning reliz nusxasida nom, o'rnatishdan oldingi tavsif, maxfiylik URL'i va yordam URL'i yoki emaili bo'lishi;
- shu ilovaning boshqa relizi
queuedyokitestingda bo'lmasligi kerak.
Ilovada tanlangan tillar asosiy manba. Arxiv tillarini to'ldirib, marketplace kartochkasining bir tilini chala qoldirish yetarli emas.
Lokal sinash — chop etish emas
Versiya qatoridagi Saqlash (lokal faollashtirish) amoCRMning vidjet yuklash qo'llanmasidagi avval private sinash bosqichining Bito varianti: kod egasining hisobida ishlaydi. Bu ilovani ommaviy qilmaydi va moderator tasdig'i hisoblanmaydi.
Lokal sinovda quyidagilarni tekshiring:
- haqiqiy admin paneldagi barcha e'lon qilingan ulanish nuqtalari;
- install, uninstall va reinstall callback'lari;
- rozilik matni, ruxsatlar va e'lon qilingan tarmoq manzillari;
- sozlamalar saqlanishi va teardown;
- tashqi servis ishlamagandagi holatlar.
Reliz tasdiqlanganda nima o'zgaradi
Moderator relizni tasdiqlaganda:
- reliz
approvedbo'ladi, moderator va vaqt yoziladi; - ilovaning joriy versiyasi unga ishora qiladi;
- arxiv production asset origin'ga ochiladi;
- tenant o'rnatib, aynan shu relizga rozilik bergach u ulanishga tayyor bo'ladi.
Reliz tasdig'i marketplace kartochkasini ommaga chiqarmaydi. Ommaviy ko'rinish alohida kartochka tekshiruviga tegishli. Kartochka moderatori joriy relizi faqat lokal yoqilgan yoki ko'rilmagan vidjet ilovasini chop etishni rad qiladi.
Yangilanishlarni chop etish
Ommaviy ilovada:
- kartochka yoki ruxsatlar o'zgarsa Asosiy ma'lumotni yangilang;
- yangi semantik versiya yarating;
- yuklang, validatsiya qiling va preview qiling;
- relizni yuborib tasdiqni kuting;
- Asosiy ma'lumot o'zgargan bo'lsa kartochkani ham alohida yuboring.
Har yangi tasdiqlangan versiya ishlashidan oldin barcha o'rnatgan tenantlardan qayta rozilik so'raydi. Hatto kosmetik relizni ham shu foydalanuvchi amali bilan rejalang.
Umumiy moderatsiya tuzilishi amoCRMning tekshiruv bosqichlariga o'xshaydi, ammo Bito kartochka va reliz tekshiruvini alohida holat mashinalari sifatida ko'rsatadi.