Ship: Fenfa
Fenfa არის აპლიკაციების დისტრიბუციის პლატფორმა, აგებული Go-ითა და Vue 3-ით. ის ამუშავებს პაიპლაინის „ბოლო მილს”: იღებს CI/CD-დან აშენებულ არტეფაქტებს და ხელმისაწვდომს ხდის ჩამოტვირთვისთვის ყველა ძირითად პლატფორმაზე.
მხარდაჭერილი პლატფორმები
Section titled “მხარდაჭერილი პლატფორმები”| პლატფორმა | ფორმატები | ფუნქციები |
|---|---|---|
| iOS | IPA | OTA ინსტალაცია, UDID ჩარიცხვა, manifest plist გენერაცია |
| Android | APK | პირდაპირი ჩამოტვირთვა, QR კოდი |
| macOS | DMG | პირდაპირი ჩამოტვირთვა |
| Windows | EXE, MSI | პირდაპირი ჩამოტვირთვა |
| Linux | AppImage, DEB, RPM | პირდაპირი ჩამოტვირთვა |
მონაცემთა მოდელი
Section titled “მონაცემთა მოდელი”Fenfa ორგანიზებს დისტრიბუციებს სამდონიანი იერარქიით:
პროდუქტი └── ვარიანტი (მაგ., "iOS Production", "Android Beta") └── რელიზი (ვერსიონირებული აშენება არტეფაქტით)- პროდუქტი — ლოგიკური აპლიკაცია (მაგ., “MyApp”)
- ვარიანტი — კონკრეტული აშენების კონფიგურაცია ან პლატფორმის სამიზნე პროდუქტში
- რელიზი — ერთი ვერსიონირებული აშენება, ატვირთული ვარიანტზე, რომელიც შეიცავს ბინარულ არტეფაქტს, ვერსიის სტრიქონს, აშენების ნომერს და ცვლილებების ჟურნალს
ძირითადი ფუნქციები
Section titled “ძირითადი ფუნქციები”ატვირთვის API
Section titled “ატვირთვის API”CI/CD პაიპლაინები ატვირთავენ აშენებებს მარტივი POST /upload ბოლო წერტილით ტოკენის ავტორიზაციით. იხილეთ ატვირთვის API სრული დეტალებისთვის.
ჩამოტვირთვის გვერდები
Section titled “ჩამოტვირთვის გვერდები”ყოველი რელიზი იღებს გასაზიარებელ ჩამოტვირთვის გვერდს:
- პლატფორმისთვის შესაფერისი ჩამოტვირთვის ღილაკები
- QR კოდი მობილური სკანირებისთვის
- ვერსიის ინფორმაცია და ცვლილებების ჟურნალი
- ავტომატური პლატფორმის ამოცნობა (ვიზიტორს სთავაზობს შესაფერის ვარიანტს)
iOS OTA ინსტალაცია
Section titled “iOS OTA ინსტალაცია”iOS IPA ფაილებისთვის, Fenfa გენერირებს საჭირო manifest.plist-ს და ემსახურება მას HTTPS-ით, რაც უზრუნველყოფს პირდაპირ over-the-air ინსტალაციას App Store-ის გარეშე. ამისთვის საჭიროა:
- ვალიდური HTTPS ბოლო წერტილი (Fenfa ამუშავებს ამას)
- მოწყობილობის UDID ჩარიცხული უნდა იყოს პროვიჟენინგ პროფილში
iOS UDID ჩარიცხვა
Section titled “iOS UDID ჩარიცხვა”Fenfa უზრუნველყოფს UDID ჩარიცხვის ნაკადს: მომხმარებლები სტუმრობენ გვერდს iOS მოწყობილობიდან, აინსტალირებენ მსუბუქ კონფიგურაციის პროფილს და Fenfa ჩაიწერს მოწყობილობის UDID-ს. ეს UDID შემდეგ შეიძლება დაემატოს თქვენს Apple Developer ანგარიშს ad-hoc დისტრიბუციისთვის.
S3/R2 შენახვა
Section titled “S3/R2 შენახვა”ნაგულისხმევად, Fenfa ინახავს არტეფაქტებს ლოკალურ ფაილურ სისტემაში. პროდაქშენის გაშლებისთვის, კონფიგურირეთ S3-თავსებადი ბექენდი (AWS S3, Cloudflare R2, MinIO) გამძლე, მასშტაბირებადი შენახვისთვის.
სწრაფი დაწყება
Section titled “სწრაფი დაწყება”# Docker-ით გაშვებაdocker run -d \ -p 8080:8080 \ -v fenfa-data:/data \ openprx/fenfa:latest
# ან წყაროდან აშენებაgit clone https://github.com/openprx/fenfacd fenfa && go build -o fenfa ./cmd/fenfa./fenfa serveადმინის დაფა ხელმისაწვდომია http://localhost:8080/admin-ზე გაშვების შემდეგ. პირველი დარეგისტრირებული მომხმარებელი ხდება ადმინისტრატორი.
ინტეგრაცია პაიპლაინთან
Section titled “ინტეგრაცია პაიპლაინთან”OpenPRX პაიპლაინში Fenfa დგას Build-სა და Protect-ს შორის:
- ხელოვნური ინტელექტის აგენტი ასრულებს კოდის ცვლილებებს და ტვირთავს რეპოზიტორიაში
- CI/CD აშენებს არტეფაქტს (IPA, APK, DMG და ა.შ.)
- CI ატვირთავს არტეფაქტს Fenfa-ში ატვირთვის API-ის საშუალებით
- Fenfa გენერირებს ჩამოტვირთვის გვერდებს და აცნობებს დაინტერესებულ მხარეებს
- მომხმარებლები ჩამოტვირთავენ და აინსტალირებენ აპლიკაციას
- PRX-WAF და PRX-SD იცავენ გაშვებულ აპლიკაციას