GitHub či GitLab: lacnejšie konto môže prehrať na minútach CI

|Autor: Redakcia QUASA|5 min čítania
GitHub či GitLab: lacnejšie konto môže prehrať na minútach CI

GitHub Team má nižšiu cenu za používateľa než GitLab Premium, no pri náročnom CI môže účet za výpočtový čas prevýšiť cenu licencií. Cenník GitHubu uvádza pre Team 4 USD za používateľa mesačne a 3 000 minút GitHub Actions mesačne.

Podľa cenníka GitLabu stojí Premium 29 USD za používateľa mesačne pri ročnej fakturácii, na GitLab.com zahŕňa 10 000 výpočtových minút a ďalších 1 000 minút sa kupuje za 10 USD. V nižšie uvedených scenároch je celkový účet za licencie a štandardné hostované CI stále nižší na GitHube. Voľba sa však mení, ak tím potrebuje vlastnú inštaláciu platformy, inú bezpečnostnú výbavu alebo odlišný spôsob prevádzky runnerov.

Minúta CI nie je rovnaká položka na oboch platformách

Pri privátnych repozitároch sa zahrnutá kvóta GitHub Actions vzťahuje na účet vlastníka repozitára, nie osobitne na každého vývojára. Pravidlá účtovania GitHub Actions uvádzajú pre štandardný dvojjadrový linuxový runner po vyčerpaní kvóty sadzbu 0,006 USD za minútu; beh na vlastnom runneri minúty služby nespotrebúva. Štandardné hostované runnery vo verejných repozitároch sú bezplatné, preto sa nasledujúci model týka privátnych projektov.

GitLab počíta spotrebu ako trvanie úlohy násobené koeficientom runnera. Dokumentácia GitLabu uvádza koeficient 1 pre základný hostovaný linuxový runner a 2 pre väčší variant medium. Zahrnutá kvóta teda predstavuje iný čas behu podľa zvoleného stroja. Navyše sa sčítava čas jednotlivých úloh: dve súbežné úlohy môžu minúty spotrebúvať rýchlejšie, než naznačuje čas od spustenia po dokončenie celej pipeline.

Šesť mesačných scenárov pre vývojový tím

Výpočet je podmienený model, nie nameraný účet. Ľahké CI predstavuje 100 minút na vývojára mesačne, náročné CI 1 000 minút. Tím má jednu organizáciu na GitHube alebo jednu skupinu na GitLab.com a všetky úlohy spúšťa v privátnych projektoch na základných hostovaných linuxových runneroch. Sumy v USD zahŕňajú licencie a potrebné nadlimitné minúty; úložisko, bezpečnostné doplnky, dane a vlastná infraštruktúra sú zatiaľ oddelené.

  • 5 vývojárov, ľahké CI: 500 minút. GitHub Team 20 USD, GitLab Premium 145 USD. Ani jeden tím neprekročí zahrnutú kvótu.
  • 5 vývojárov, náročné CI: 5 000 minút. GitHub Team 32 USD vrátane 12 USD za nadlimitné CI; GitLab Premium 145 USD.
  • 20 vývojárov, ľahké CI: 2 000 minút. GitHub Team 80 USD, GitLab Premium 580 USD.
  • 20 vývojárov, náročné CI: 20 000 minút. GitHub Team 182 USD vrátane 102 USD za CI; GitLab Premium 680 USD vrátane 100 USD za dokúpené minúty.
  • 50 vývojárov, ľahké CI: 5 000 minút. GitHub Team 212 USD vrátane 12 USD za CI; GitLab Premium 1 450 USD.
  • 50 vývojárov, náročné CI: 50 000 minút. GitHub Team 482 USD vrátane 282 USD za CI; GitLab Premium 1 850 USD vrátane 400 USD za dokúpené minúty.

Pri poslednom scenári je hostované CI na GitHube drahšie než jeho používateľské licencie: 282 USD oproti 200 USD. Lacnejšia licencia teda prestáva vystihovať štruktúru účtu, hoci GitHub zostáva v tomto konkrétnom porovnaní celkovo lacnejší. Výsledok závisí od predpokladu rovnakého počtu minút na základných runneroch. Náročnejší stroj, iný operačný systém alebo rozdielne trvanie zostavení zmenia spotrebu aj porovnateľnosť výpočtu.

Vlastný runner odstráni poplatok za hostované minúty, pridá prevádzku

Ak sa všetky modelové úlohy presunú na vlastné runnery, suma za hostované CI v týchto scenároch odpadne. GitHub Team sa potom začína na 20, 80 alebo 200 USD mesačne podľa počtu používateľov; GitLab Premium na 145, 580 alebo 1 450 USD. K obom radom treba pripočítať stroje, disk, sieť, aktualizácie a správu runnerov. Rovnaký mesačný počet minút pritom môže vyžadovať odlišnú kapacitu, ak veľa úloh beží súbežne.

Vlastný runner má hodnotu aj tam, kde zostavenie potrebuje prístup k interným službám alebo špecifický hardvér. Jeho náklad sa nedá odvodiť iba z počtu spotrebovaných minút: server môže byť vyhradený pre špičku a mimo nej nečinný, prípadne ho tím zdieľa s ďalšími úlohami. Preto má kalkulácia vlastného runnera samostatný riadok pre infraštruktúru a prevádzku, nie nulovú cenu CI. Na GitLab.com sa kvóta hostovaných runnerov nevzťahuje na vlastné skupinové alebo projektové runnery; obdobne vlastné runnery GitHub Actions nečerpajú zahrnuté hostované minúty.

Úložisko a bezpečnosť menia poradie položiek

GitHub Team má spoločnú kvótu 2 GB pre artefakty Actions a GitHub Packages; nad ňou je sadzba 0,25 USD za GB mesačne. Ak by modelový tím držal 10 GB týchto dát po celý mesiac, pripočítal by približne 2 USD. Úložisko vyrovnávacej pamäte Actions sa posudzuje osobitne a priebežné mazanie artefaktov môže ovplyvniť skutočný účet, pretože spotreba úložiska sa časovo účtuje.

Na GitLab.com má podľa pravidiel úložiska GitLabu projekt v úrovni Premium limit 500 GiB pre repozitár a Git LFS; tento limit nezahŕňa artefakty zostavení ani registre balíkov a kontajnerov. Priame porovnanie tejto kvóty s priestorom na artefakty GitHubu by preto spájalo rôzne druhy dát. Šesť výpočtov predpokladá spotrebu úložiska v rámci príslušných limitov. Ak ich tím prekračuje, musí k licencii a CI pridať cenu konkrétneho typu priestoru, ktorý skutočne používa.

Aj bezpečnostné požiadavky treba prepočítať podľa požadovanej funkcie, nie podľa názvu plateného plánu. GitHub ponúka Code Security a Secret Protection ako doplnky; GitLab rozlišuje funkcie Premium a širšie testovanie bezpečnosti aplikácií v úrovni Ultimate s individuálnou cenou. Tím, pre ktorý je niektorá z týchto funkcií povinná, porovnáva už inú zostavu než samotné Team a Premium. Do uvedených súm preto nie je započítaná nijaká neocenená bezpečnostná funkcia.

Vlastné hostovanie platformy je iné rozhodnutie

Runner vo firemnej sieti môže vykonávať zostavenia, aj keď repozitáre zostávajú v cloudovej službe. Vlastné hostovanie celej platformy presúva do infraštruktúry tímu aj repozitáre a jej správu. Porovnanie GitHub Alternatives odlišuje GitHub Enterprise Server od GitHub Team a pri GitLabe uvádza platený Self-Managed aj bezplatnú Community Edition. Pri vlastnej inštalácii preto porovnanie cloudových licencií Team a Premium nevystihuje dostupné možnosti.

Bezplatná licencia Community Edition môže byť finančne výhodná, len ak náklady na servery, zálohy, aktualizácie, obnovu a správu zostanú pod nákladmi alternatívy, ktorá spĺňa rovnaké požiadavky. Platené funkcie GitLabu Self-Managed a GitHub Enterprise Server zasa vyžadujú porovnanie príslušných edícií. Pre tím, ktorý chce cloudové repozitáre a základné linuxové CI, ukazujú scenáre výhodu GitHub Team; požiadavka prevádzkovať samotnú platformu mení predmet aj cenu rozhodnutia.

Prečítajte si aj:

Zdieľať:

Prihláste sa na odber newslettera

Dostávajte najnovšie správy o Web3, AI a kryptomenách priamo do svojej schránky.

0