DevOps & CI/CDpokročilý

Čo je GitHub Actions?

GitHub Actions je CI/CD platforma integrovaná priamo v GitHube, ktorá umožňuje automatizovať zostavovanie, testovanie a nasadzovanie kódu pomocou YAML workflow súborov. GitHub ju spustil v októbri 2018.

Definícia GitHub Actions

Čo je GitHub Actions

GitHub Actions je platforma pre kontinuálnu integráciu a doručovanie (CI/CD), ktorú GitHub (vlastnený Microsoftom) predstavil v októbri 2018 a plne sprístupnil v novembri 2019. Na rozdiel od tradičných CI/CD nástrojov je priamo integrovaná v repozitári bez potreby externého servera.

Ako funguje

Automatizácia sa definuje v YAML súboroch uložených v priečinku .github/workflows/:

  • Workflow — automatizovaný proces spúšťaný udalosťou (push, pull request, schedule, manuálne)
  • Job — skupina krokov bežiacich na jednom runneri
  • Step — jednotlivý príkaz alebo akcia
  • Action — znovupoužiteľný balíček kódu; GitHub Marketplace obsahuje tisíce predpripravených akcií
  • Runner — virtuálny stroj (Linux, macOS, Windows), na ktorom workflow beží

GitHub Actions ponúka 2 000 bezplatných minút mesačne pre verejné repozitáre (neobmedzene) a súkromné repozitáre na free pláne. Podporuje maticové zostavenia (testovanie na viacerých OS a verziách súčasne) a cache závislostí pre rýchlejšie buildy.

Praktický príklad

Príklad: Máte Next.js webstránku na GitHube a chcete automaticky testovať a nasadzovať na Vercel.

Vytvoríte súbor .github/workflows/ci.yml: pri každom pull requeste sa spustia linting a testy. Po merge do main vetvy sa automaticky spustí build a deploy na produkciu.

Celý proces trvá 2-3 minúty a nevyžaduje žiadny externý server — všetko beží na GitHub runners.

Často kladené otázky

Čo je GitHub Actions?

GitHub Actions je CI/CD platforma zabudovaná priamo v GitHube. Umožňuje automatizovať zostavovanie, testovanie a nasadzovanie kódu pomocou YAML workflow súborov bez potreby externého servera.

Je GitHub Actions zadarmo?

Pre verejné (public) repozitáre je GitHub Actions úplne zadarmo s neobmedzenými minútami. Súkromné repozitáre majú 2 000 bezplatných minút mesačne na free pláne.

Ako sa GitHub Actions líši od Jenkinsu?

GitHub Actions je cloudová služba bez potreby vlastného servera, s natívnou integráciou v GitHube. Jenkins je self-hosted riešenie s väčšou flexibilitou, ale vyžaduje vlastnú infraštruktúru a údržbu.

Čo je GitHub Actions Marketplace?

Marketplace je katalóg tisícov predpripravených akcií (actions) vytvorených komunitou. Nájdete tam akcie pre nasadzovanie na AWS, testovanie, linting, notifikácie a ďalšie bežné úlohy.

Súvisiace pojmy

Potrebujete pomôcť s webom?

Napíšte mi a poradím vám s vaším projektom. Prvá konzultácia je zadarmo a nezáväzná.