Fedora na cestě k přechodu na platformu Forgejo pro Gitové služby spolupráce na vývoji

Matthew Miller, vedoucí projektu Fedora, představil iniciativu na odchod od používání vlastní platformy pro spolupráci Pagure. Jako náhradu preferovala správní rada Fedora Council platformu Forgejo, ale před schválením přechodu na Forgejo rozhodla o uspořádání veřejné diskuse o svém výběru a zohlednění názoru komunity. Konečné hlasování se uskuteční za 2 týdny a do této doby může každý sdílet své myšlenky ohledně učiněného výběru.

Současná vlastní platforma Pagure se stala zastaralou, vyžaduje vysoké nároky na údržbu, je ve stavu stagnace a nezískala široké rozšíření mimo Fedora. V roce 2020 již byla podniknuta pokus o nahrazení Pagure platformou GitLab, ale tato iniciativa se nedostala dál než k diskuzím. V tomto roce, po zhodnocení existujících platforem pro spolupráci, bylo zjištěno, že projektu je potřeba otevřené řešení vhodné pro nasazení na vlastních serverech. Nejlépe kritériím vyhovovaly GitLab Community Edition a Forgejo.

Platformy GitLab a Forgejo mají své výhody a nevýhody, a obě vyžadují určité úpravy k obnovení funkčnosti platformy Dist Git na základě Pagure používané při vývoji Fedora Linux. Konkrétně bude v nové platformě nutné zajistit integraci s přidruženými službami projektu, jako jsou Bodhi, Fedora CI, COPR, Fedpkg, Hotness, Fedora Notifications, Toddlers, Fedora Messaging, Monitor Gating, Release Engineering Scripts, Fedora Packagers a Packit.

Po zvážení všech argumentů se členové správní rady rozhodli preferovat platformu Forgejo, protože se vyvíjí nezávislou komunitou, zatímco GitLab je produktem komerční společnosti, vyvíjeným podle modelu Open Core, při kterém jsou některé rozšířené funkce, mezi nimiž jsou ty, které potřebuje Fedora, k dispozici pouze v komerčním produktu. Při výběru bylo také zohledněno obavy, že se politika GitLab může časem změnit a projekt se může stát méně otevřeným. Dalším argumentem ve prospěch Forgejo bylo, že jazyk Go a kódová základna Forgejo se ukázaly být pro tým odpovědný za infrastrukturu ve Fedoře přívětivější než jazyk Ruby používaný v GitLab.

Platforma Forgejo je určena pro nasazení systému spolupráce s repozitáři Git, přičemž řeší úkoly podobné těm, které nabízí GitHub, Bitbucket a Gitlab. Forgejo je fork projektu Gitea, který se zase odštěpil od platformy Gogs. Oddělení Forgejo proběhlo v roce 2022 po pokusech o komercializaci Gitea a převodu správy do rukou komerční společnosti. V rámci projektu se nezávislí vývojáři snažili udržet předchozí principy nezávislého řízení a kontroly komunitou. Kód projektu je napsán v programovacím jazyce Go. Od vydání verze 9.0 se kód Forgejo šíří pod licencí GPLv3+, zatímco starý kód zůstává pod licencí MIT.

Klíčovými vlastnostmi platformy Forgejo je nízká spotřeba zdrojů (může být používána na desce Raspberry Pi nebo v levných VPS) a jednoduchý proces instalace. Jsou k dispozici standardní funkce práce s projekty, jako je správa úkolů, sledování problémů (issues), pull requesty, wiki, nástroje pro koordinaci skupin vývojářů, příprava verzí, automatizace nasazení balíčků do repozitářů, správa oprávnění, integrace s platformami pro kontinuální integraci, vyhledávání v kódu, autentizace přes LDAP a OAuth, přístup k repozitáři prostřednictvím protokolů SSH a HTTP/HTTPS, připojení webhooks pro integraci se Slackem, Discordem a dalšími službami, podpora Git hooks a Git LFS, nástroje pro migraci a zrcadlení repozitářů. Zvlášť se zdůrazňuje možnost využití protokolu ActivityPub pro spojení jednotlivých servery vývojáře.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster