CI/CD
CRACI on runneri, jolla buildisi ajetaan
CRACI on CI/CD uudelleen ajateltuna ohjelmistotoimitusketjun tietoturvan näkökulmasta. GitHub Actions -työnkulkusi ajetaan CRACI:n omilla runnereilla, ja ajon aikana CRACI havainnoi jokaisen ulkoisen riippuvuuden, jonka ne hakevat.
Päivitetty
Yksi rivi siirtää buildin
CRACI korvaa runnerin, ei GitHub Actionsia. Työnkulkutiedostosi, actionit ja salaisuudet pysyvät paikoillaan; vain jobin suorituspaikka vaihtuu:
jobs:
build:
runs-on: craci Ajot näkyvät edelleen GitHubissa, joten pull requestit, checkit ja lokit pysyvät siellä, mistä tiimisi on tottunut ne katsomaan. Sen hoitaa GitHub App, jonka asennat kaikkiin tai valittuihin repositorioihin.
Millaisia runnerit ovat
- Koot 1–32 laskentayksikköä, kukin 1 vCPU ja 3 Gt RAM-muistia, oletuksena 2. Aseta koko jobikohtaisesti
cracicorp/setup@v1-actionilla ja sensize:-syötteellä. - Natiivi x86-64 ja ARM64 samaan hintaan.
- Kuvat: CRACI Slim, CRACI Slim ARM64 ja GitHub-yhteensopiva Ubuntu 24.04 -kuva, joissa on Docker Engine, Buildx ja Compose v2.
- Eristetyt virtuaalikoneet jobeittain. Sisäkkäinen virtualisointi on saatavilla x86-64:llä ja esiversiona ARM64:llä.
- Välimuisti: GitHub Actionsin välimuisti sekä konttikerrosten välimuisti – paikalliset, etä- ja bind mount -kerrosvälimuistit.
- Putken perusinfra: vakaa lähtevän liikenteen IP-alue ja organisaatiotason runneripohjat.
- Toistaiseksi Linux. Windows- ja macOS-runnerit ovat tiekartalla.
Runnereita hallinnoi CRACI, ja ne toimivat eurooppalaisella bare metal -infrastruktuurilla, ja data pysyy EU:ssa. Asiakkaan ylläpitämät runnerit ovat tiekartalla Enterprise-asiakkaille; vertailu löytyy sivulta hallinnoidut vs. itse ylläpidetyt runnerit.
Miksi toimitusketjun tietoturva kuuluu runneriin
Tuotantobuildi ei ole sama kuin buildi kannettavalla. Versioalueet ratkeavat eri tavalla, tagit siirtyvät, välimuistit ovat lämpimiä tai kylmiä, eikä ympäristö ole sama. Ainoa luotettava tieto siitä, mitä toimitettiin, on se, joka tallennetaan julkaisubuildin ajon aikana – siksi CRACI sijoitti tallentimen runneriin eikä sen viereen. Koko perustelu on sivulla miksi toimitusketjun tietoturva kuuluu CI:hin.
Koska runneri on CRACI:n oma, se pystyy asioihin, joihin skanneri ei pysty:
- Tallentaa, ei skannaa. Pakettitietoinen välityspalvelin (proxy) havainnoi, mitä jobi todella lataa, myös transitiiviset riippuvuudet ja CI-välimuisteista palautetut paketit. Jokaisen jobin SBOM:lla on kattavuustila.
- Valvoo lähtevän liikenteen käytäntöä (egress policy). Käytäntö pannaan täytäntöön runnerilla, se validoidaan ennen jobin alkua, ja virhetilanteessa liikenne estetään (fail closed).
- Palauttaa näytön. API palauttaa jokaisen jobin SBOM:t, verkkojäljet ja alkuperätiedot.
Noin kaksi kertaa nopeampi kuin GitHubin ylläpitämät runnerit
CRACI ajaa buildit noin kaksi kertaa nopeammin kuin GitHubin tavalliset ylläpitämät runnerit, samoilla työnkuluilla ja niitä muuttamatta. Jobi, joka kesti kymmenen minuuttia, kestää noin viisi.
Nopeampi CI on arvokkaampi kuin sen säästämät minuutit. Pull requestin, joka on vihreä viidessä minuutissa, katselmoija katsoo yhä; kaksikymmentä minuuttia kestävästä tekijä on jo siirtynyt muihin asioihin. Buildiaika on väli muutoksen kirjoittamisen ja sen toimivuuden selviämisen välillä, ja se maksetaan jokaisella pushilla, jokaisen tiimin insinöörin toimesta.
Siihen vaikuttaa kolme asiaa: laitteisto, lyhyemmät odotusajat ja välimuisti.
Mitä nopeutus maksaa
Koska CRACI mittaa sekunneittain ja veloittaa vähemmän minuutilta, kaksinkertainen nopeus kertautuu eikä kumoudu. Buildissa, joka kestää kymmenen minuuttia GitHubin ylläpitämällä 2-ytimisellä x64-runnerilla (GitHubin listahinnat syyskuussa 2026, CRACI lokakuussa 2026):
| Kymmenen minuutin buildi, 1 000 kertaa kuukaudessa | GitHub-hosted | CRACI |
|---|---|---|
| Kokonaiskesto buildia kohden | 10 minuuttia | Noin 5 minuuttia |
| Hinta buildia kohden | $0.060 | $0.020 |
| Hinta kuukaudessa | Noin $60 | Noin $20 |
Se on noin 67 % vähemmän eli 3 kertaa halvempi. Ilman nopeutusta säästö on pelkkä listahintojen ero, noin 33 % 2-ytimisellä x64:llä. Se, kuinka paljon nopeammiksi omat buildisi muuttuvat, riippuu kuormasta, joten siirrä yksi työnkulku ja mittaa.
Laskutus sekunneittain
Build-minuutit mitataan sekunneittain, lähimpään sekuntiin pyöristettynä. GitHub pyöristää jokaisen jobin ylös täyteen minuuttiin, joten lyhyiden jobien matriisista laskutetaan aikaa, jota ei koskaan käytetty: 30 sekunnin jobi maksaa CRACI:lla noin 67 % vähemmän ja 70 sekunnin jobi noin 61 % vähemmän. Pitkissä jobeissa ero lähestyy listahintojen eroa.
Build-minuutit maksavat $0.002 vCPU-minuutilta eli $0.004 minuutilta koon 2 runnerilla, ja ARM64:llä hinta on sama. CRACI ei ole markkinoiden halvin runneri, eikä hinta ole peruste: peruste on se, mitä runneri tallentaa ajon aikana. Katso hinnoittelu. Voit verrata omaa GitHub-laskuasi CRACI:in GitHub Actionsin hintalaskurilla.
Miten CRACI vertautuu muihin GitHub Actions -runnereihin
Blacksmith, Depot, Namespace ja WarpBuild toimivat kaikki samalla tavalla kuin CRACI: työnkulut pysyvät GitHub Actionsissa, ja vain jobin suorituspaikka vaihtuu. Nopeudeltaan ja hinnaltaan ne ovat lähellä toisiaan, ja useampi niistä ilmoittaa ARM-hinnan, joka on CRACI:n hintaa alempi. Ero on siinä, mitä runneri tallentaa ja hallitsee jobin ajon aikana.
| Ominaisuus | CRACI | GitHub-hosted | Blacksmith | Depot | Namespace | WarpBuild |
|---|---|---|---|---|---|---|
| 2 vCPU Linux x64, minuutilta | $0.004 | $0.006 | $0.004 | $0.006 paketin minuuttien jälkeen | $0.002 paketissa, $0.003 ylittävältä osalta | $0.004 |
| Mittaus | Sekunneittain | Pyöristetään ylös täyteen minuuttiin | Ei mainita | Sekunneittain | Minuuteittain, vähintään 1 minuutti | Minuuteittain |
| Konttikerrosten välimuisti | Ei mainita | |||||
| Egress-käytäntö runnerilla | Tyypitetyt lähteet, estää virhetilanteessa | Azuren yksityisverkot | Staattiset IP-osoitteet | IP- ja isäntänimisäännöt | Verkkotunnussäännöt, neuvoa-antava tila | BYOC-suojausryhmät |
| SBOM siitä, mitä kukin jobi haki | Kattavuus jobeittain | Kuvien Syft-skannaus | ||||
| Allekirjoitetut buildin alkuperätiedot | Ei allekirjoitettuja alkuperätietoja | Attestaatiot, SLSA L2 tai L3 | BuildKitin kuva-attestaatiot | |||
| Windows ja macOS | Toistaiseksi vain Linux | Windows betana |
- Sisältyy
- Osittain
- Ei sisälly
- Tiekartalla
CRACI on yksi edullisimmista runnereista, ja se on runneri, joka tuottaa SBOM:n siitä, mitä jobi todella haki, panee täytäntöön egress-käytännön, joka estää liikenteen virhetilanteessa, ja palauttaa alkuperätiedot API:nsa kautta – buildin ajamisen sivutuotteena, ilman lisäyksiä työnkulkuun. Jos haluat koko vertailun rivi riviltä: GitHub Actions -runnerit vertailussa.
Mikä toimii hyvin CRACI:lla
Kaikki, mitä GitHub Actions -jobi tekee: sovellusbuildit, konttikuvat, testisarjat. Kaksi erikseen mainitsemisen arvoista tapausta ovat sulautetun Linuxin kuvien Yocto- ja BitBake-buildit, dokumentoitu koon 32 runnereihin asti, sekä Raspberry Pi OS:n pi-gen-buildit.
Tiekartalla
- Windows- ja macOS-runnerit: tiekartalla.
- Asiakkaan ylläpitämät runnerit: tiekartalla, Enterprise-asiakkaille.
- Muut CI-järjestelmät: toistaiseksi GitHub Actions, muut tiekartalla ilman päivämäärää.
Aja yksi työnkuluistasi CRACI:lla
Varaa demo, niin siirrämme yhden GitHub Actions -työnkulkusi CRACI:n runnereille ja näytämme, mitä buildi tallentaa.
Varaa demo