CI/CD
CRACI je runner, na kterém běží vaše buildy
CRACI je CI/CD znovu vymyšlené z pohledu bezpečnosti softwarového dodavatelského řetězce. Vaše workflow GitHub Actions běží na vlastních runnerech CRACI a během běhu CRACI sleduje každou externí závislost, kterou stáhnou.
Aktualizováno
Jeden řádek přesune build
CRACI nahrazuje runner, ne GitHub Actions. Soubory workflow, actions i secrets zůstávají tam, kde jsou; mění se jen místo, kde job běží:
jobs:
build:
runs-on: craci Běhy se dál zobrazují v GitHubu, takže pull requesty, checky a logy zůstávají tam, kam se váš tým už dívá. To zajišťuje GitHub App, kterou nainstalujete do všech nebo jen vybraných repozitářů.
Jaké runnery jsou
- Velikosti 1 až 32 výpočetních jednotek, každá 1 vCPU a 3 GB RAM, výchozí velikost 2. Velikost nastavíte pro každý job pomocí
cracicorp/setup@v1a jeho vstupusize:. - Nativní x86-64 a ARM64 za stejnou sazbu.
- Image: CRACI Slim, CRACI Slim ARM64 a image Ubuntu 24.04 kompatibilní s GitHubem, s Docker Engine, Buildx a Compose v2.
- Izolované virtuální stroje pro každý job. Vnořená virtualizace je k dispozici na x86-64 a ve verzi preview na ARM64.
- Cache: cache GitHub Actions a navíc cache vrstev kontejnerů — lokální, vzdálená a bind mount cache vrstev.
- Infrastruktura pipeline: stabilní rozsah IP adres pro odchozí provoz a šablony runnerů na úrovni organizace.
- Zatím Linux. Runnery pro Windows a macOS jsou v plánu vývoje.
Runnery spravuje CRACI a běží na evropské bare-metal infrastruktuře s uložením dat v EU. Runnery hostované u zákazníka jsou v plánu vývoje pro Enterprise; výhody a nevýhody popisuje článek spravované versus self-hosted runnery.
Proč bezpečnost dodavatelského řetězce patří do runneru
Produkční build není build na notebooku. Rozsahy verzí se vyřeší jinak, tagy se posouvají, cache je zahřátá nebo studená a prostředí není stejné. Jediný spolehlivý záznam o tom, co bylo dodáno, je ten pořízený během release buildu — proto CRACI umístilo záznam do runneru, a ne vedle něj. Celá argumentace je v článku proč bezpečnost dodavatelského řetězce patří do CI.
Protože CRACI vlastní runner, dokáže věci, které skener nedokáže:
- Zaznamenává, neskenuje. Proxy, která rozumí balíčkům, sleduje, co job skutečně stahuje, včetně tranzitivních závislostí a balíčků obnovených z cache CI. SBOM každého jobu nese stav úplnosti.
- Vynucuje egress policy. Politika se vynucuje na runneru, ověřuje se před spuštěním jobu a při selhání vše zablokuje (fail-closed).
- Vrací důkazy. API vrací pro každý job SBOM, síťové záznamy a údaje o původu.
Zhruba dvakrát rychlejší než runnery hostované na GitHubu
CRACI spouští buildy zhruba dvakrát rychleji než standardní hostované runnery GitHubu, se stejnými workflow a bez jejich úprav. Job, který trval deset minut, trvá asi pět.
Rychlejší CI má větší hodnotu než ušetřené minuty. Pull request, který zezelená za pět minut, si recenzent ještě prohlíží; u toho, který trvá dvacet, už autor přepnul na jinou práci. Doba buildu je interval mezi napsáním změny a zjištěním, zda funguje, a platí ji při každém push každý inženýr v týmu.
Stojí za tím tři věci: hardware, kratší čekání a cache.
Kolik zrychlení stojí
Protože CRACI účtuje po sekundách a za minutu si účtuje méně, dvojnásobná rychlost úsporu znásobí, místo aby ji vyrušila. U buildu, který na 2jádrovém x64 runneru hostovaném na GitHubu trvá deset minut (ceníkové ceny GitHubu k září 2026, CRACI k říjnu 2026):
| 10minutový build, 1 000krát měsíčně | GitHub-hosted | CRACI |
|---|---|---|
| Skutečná doba jednoho buildu | 10 minut | Asi 5 minut |
| Cena za build | $0.060 | $0.020 |
| Cena za měsíc | Asi $60 | Asi $20 |
To je zhruba o 67 % méně, tedy 3krát levněji. Bez zrychlení zbývá úspora jen z rozdílu ceníkových cen, zhruba 33 % na 2jádrovém x64. O kolik se zrychlí vaše vlastní buildy, závisí na zátěži, proto přesuňte jeden workflow a změřte to.
Účtování po sekundách
Minuty buildu se účtují po sekundách, zaokrouhleno na nejbližší sekundu. GitHub zaokrouhluje každý job nahoru na celou minutu, takže matice krátkých jobů se platí i za čas, který nikdy nevyužila: 30sekundový job stojí na CRACI zhruba o 67 % méně a 70sekundový job zhruba o 61 % méně. U dlouhých jobů se úspora blíží rozdílu ceníkových cen.
Minuty buildu stojí $0.002 za vCPU-minutu, tedy $0.004 za minutu u runneru velikosti 2, za stejnou sazbu i na ARM64. CRACI není nejlevnější runner na trhu a cena není hlavní argument: tím je to, co runner během běhu zaznamená. Viz ceník. Pokud chcete porovnat svůj vlastní účet za GitHub s CRACI, použijte cenovou kalkulačku GitHub Actions.
Jak si CRACI stojí v porovnání s jinými runnery pro GitHub Actions
Blacksmith, Depot, Namespace a WarpBuild fungují stejně jako CRACI: workflow zůstanou v GitHub Actions a mění se jen místo, kde job běží. Rychlostí a cenou jsou si blízko a několik z nich uvádí nižší cenu za ARM než CRACI. Rozdíl je v tom, co runner během běhu jobu zaznamenává a kontroluje.
| Funkce | CRACI | GitHub-hosted | Blacksmith | Depot | Namespace | WarpBuild |
|---|---|---|---|---|---|---|
| 2 vCPU Linux x64, za minutu | $0.004 | $0.006 | $0.004 | $0.006 po vyčerpání minut z plánu | $0.002 v plánu, $0.003 nad rámec plánu | $0.004 |
| Účtování | Po sekundách | Zaokrouhleno nahoru na celé minuty | Neuvedeno | Po sekundách | Po minutách, minimálně 1 minuta | Po minutách |
| Cache vrstev kontejnerů | Neuvedeno | |||||
| Egress policy na runneru | Typované zdroje, fail-closed | Privátní síť Azure | Statické IP adresy | Pravidla pro IP a názvy hostitelů | Pravidla domén, pouze doporučující režim | Skupiny zabezpečení BYOC |
| SBOM toho, co stáhl každý job | Úplnost pro každý job | Sken image pomocí Syft | ||||
| Podepsaný původ buildu | Bez podepsaného původu | Atestace, SLSA L2 nebo L3 | Atestace image přes BuildKit | |||
| Windows a macOS | Zatím jen Linux | Windows ve verzi beta |
- Součástí
- Částečně
- Není součástí
- V plánu vývoje
CRACI patří k nejdostupnějším runnerům a je tím, který vytváří SBOM toho, co job skutečně stáhl, vynucuje egress policy, která při selhání vše zablokuje, a přes své API vrací údaje o původu — jako vedlejší produkt běhu buildu, bez jakýchkoli doplňků ve workflow. Pokud chcete úplnou verzi řádek po řádku: srovnání runnerů pro GitHub Actions.
Co na CRACI běží dobře
Cokoli, co dělá job GitHub Actions: buildy aplikací, image kontejnerů, sady testů. Za zmínku stojí dva případy: buildy Yocto a BitBake embedded linuxových image, zdokumentované až po runnery velikosti 32, a buildy Raspberry Pi OS pomocí pi-gen.
V plánu vývoje
- Runnery pro Windows a macOS: v plánu vývoje.
- Runnery hostované u zákazníka: v plánu vývoje, pro Enterprise.
- Další systémy CI: zatím GitHub Actions, další jsou v plánu vývoje zatím bez data.
Spusťte jeden ze svých workflow na CRACI
Rezervujte si demo: přesuneme jeden z vašich workflow GitHub Actions na runnery CRACI a ukážeme vám, co build zaznamená.
Rezervujte si demo