Sammenligning
CRACI vs. Azure Pipelines
Azure Pipelines bygger og udruller fra Azure DevOps og sælger kapacitet pr. parallelt job. CRACI er en runner til GitHub Actions, afregnet pr. minut, der registrerer hvert build, så SBOM'en, netværkspolitikken og provenance kommer fra selve buildet.
Opdateret
Det korte svar
Azure Pipelines er CI/CD-delen af Azure DevOps. Det bygger og tester på Linux, Windows og macOS, fungerer med Azure Repos og GitHub og udruller til virtuelle maskiner, containere, on-premises- og cloud-mål. Ligger din opgavestyring, dine repositories og dine releases i Azure DevOps, eller har du brug for Windows- og macOS-builds fra én Microsoft-kontrakt, passer det godt.
CRACI dækker en snævrere del og går dybere ind i den. Det er en runner til GitHub Actions: Mens hvert job kører, registrerer det hver ekstern afhængighed, buildet henter, håndhæver en egress-politik på buildets netværk og producerer SBOM'er, provenance-data og sårbarhedsovervågning ud fra den registrering. I Azure Pipelines kommer den dokumentation fra de tasks og værktøjer, du tilføjer til hver pipeline.
Ét praktisk punkt kommer først. CRACI understøtter i dag kun GitHub Actions, med GitLab CI og Jenkins på roadmappen. Azure Pipelines understøttes ikke, så en pipeline skal flyttes til et GitHub Actions-workflow for at køre på CRACI.
Overblik
| Funktion | CRACI | Azure Pipelines |
|---|---|---|
| Hvad det er | En sikker runner til GitHub Actions. | CI/CD-delen af Azure DevOps. |
| Hvordan SBOM'en bliver til | Registreret ud fra det, hvert job hentede, med en fuldstændighedsstatus | Tasks eller værktøjer, du tilføjer til pipelinen |
| Egress-politik for buildets netværk | Default deny eller allow, valideret før jobbet, blokerer ved fejl (fail closed) | Du må selv bygge den, på selvhostede agenter |
| Sårbarhedsovervågning | Overvågede SBOM'er genvurderes løbende | Tasks eller værktøjer, du tilføjer |
| CI-systemer | GitHub Actions i dag; GitLab CI og Jenkins på roadmappen | Azure Pipelines, med Azure Repos og GitHub |
| Hostede maskiner | Linux på x86-64 og ARM64, 1 til 32 vCPU. Windows og macOS på roadmappen. | Én størrelse pr. styresystem: Linux og Windows med 2 kerner og 7 GB, macOS med 3 kerner og 14 GB. |
| Kører på dine egne maskiner | Kundehostede runnere, Enterprise | Selvhostede agenter og Azure DevOps Server |
| Udrulninger | CRACI dækker buildet | VM'er, containere, on-premises- og cloud-mål |
| Sådan betaler du | $0.004 pr. minut ($0.002 pr. vCPU-minut), målt pr. sekund. Intet månedligt gebyr og ingen betaling pr. SBOM. | Pr. parallelt job: ét hostet job med 1.800 gratis minutter om måneden, derefter $40 om måneden pr. hostet job med ubegrænsede minutter eller $15 pr. selvhostet job (pr. oktober 2026). |
- Inkluderet
- Delvist
- Ikke inkluderet
- På roadmappen
Hvad Azure Pipelines gør godt
Én platform med Azure DevOps. Pipelines ligger ved siden af opgavestyring, Azure Repos og Azure Artifacts, så work items, kode, builds og pakker samles ét sted. Det bygger også kode, der hostes på GitHub.
Alle styresystemer. Microsoft-hostede agenter kører Linux, Windows og macOS, og ét parallelt job kører hvilket som helst af dem til samme pris. Selvhostede agenter udvider det til dine egne maskiner, og Azure DevOps Server bringer hele platformen on-premises.
Ubegrænsede minutter pr. job. Et betalt parallelt job har ingen månedlig minutgrænse, og hver kørsel må vare op til 360 minutter. Et team, der har jobs kørende hele dagen, betaler en fast pris, uanset hvor lang tid buildene tager.
Indbyggede udrulninger. Pipelines fører builds hele vejen til udrulning på virtuelle maskiner, containere, on-premises-servere og cloud-mål.
Hvor CRACI er anderledes
SBOM'en kommer fra buildet
I Azure Pipelines kommer en SBOM fra en task eller et scanningstrin, du tilføjer, og som normalt læser manifester og lockfiles bagefter. Builds gør ofte mere, end de filer siger: Install-scripts downloader kode, build-scripts henter under buildet, og caches gendanner pakker, som ingen lockfile nævner. CRACI ser den trafik, fordi det er runneren. En pakkebevidst proxy registrerer, hvad hvert job henter fra pakkekilderne, på tværs af npm, PyPI, RubyGems, Cargo, Go, Nix, OCI, apt, apk og Git-kilder, og dokumentationen for afhængighederne følger med CI-caches. Hver CycloneDX- eller SPDX-SBOM angiver, hvor komplet den er, pr. job og pr. cache.
En politik på buildets netværk
På Microsoft-hostede agenter er det ikke dig, der bestemmer, hvad et build må nå; på selvhostede agenter er det en netværksopsætning, du selv bygger og vedligeholder. CRACI lægger en egress-politik på hvert job: default deny eller default allow, med 24 indbyggede presets for softwarekilder og typede brugerdefinerede kilder, valideret før jobbet starter. Politikker blokerer ved fejl (fail closed), og brud udløser en alarm.
Overvågning af det, der er leveret
API'et returnerer SBOM'er, netværkstraces og provenance. CRACI samler sårbarheder på tværs af builds og repositories, bliver ved med at genvurdere overvågede SBOM'er, efterhånden som advisories dukker op, og viser, hvilke tidligere builds der indeholdt en sårbar afhængighed, så du ved, i hvilken periode du var berørt.
Betaling pr. minut, ikke pr. parallelt job
Azure Pipelines sælger samtidighed: Hvert build, du vil have kørende på samme tid, kræver sit eget hostede job til $40 om måneden, i én størrelse med 2 kerner og 7 GB. Er et job i brug 8 timer på hver af 22 arbejdsdage, svarer det til omkring $0.0038 pr. minut, lidt under CRACI's $0.004 for 2 vCPU. Er det i brug halvdelen af tiden, er det omkring $0.0076. Builds kommer i ryk, så de jobs, der er købt til den travleste time, står ubrugte resten af dagen.
CRACI tager kun betaling for build-minutter: $0.002 pr. vCPU-minut ($0.004 for en standardrunner med 2 vCPU), målt pr. sekund, uden månedligt gebyr og uden betaling pr. SBOM. Et job, der har brug for mere kraft, kan bruge op til 32 vCPU. Se priser på CI-runnere for den fulde sammenligning.
Hvilken passer bedst
- Bliv på Azure Pipelines, hvis din opgavestyring, dine repositories og dine releases ligger i Azure DevOps, hvis du har brug for Windows- eller macOS-builds, hvis du udruller fra de samme pipelines, eller hvis dine jobs kører hele dagen.
- Vælg CRACI, hvis din kode ligger på GitHub eller er på vej dertil, og du vil have, at hvert build producerer en registrering af, hvad der gik ind i releasen, prissat pr. build-minut.
- Brug begge under en gradvis flytning: Valget træffes pr. pipeline, så Linux-builds kan flytte til GitHub Actions på CRACI, mens Windows-, macOS- og udrulningspipelines bliver.
Vær klar over, hvad du giver afkald på ved at vælge CRACI. Det udruller ikke software, det kører i dag kun Linux-jobs, med Windows og macOS på roadmappen, og kundehostede runnere er på roadmappen til Enterprise.
Til regulerede produkter
Rammer som EU's Cyber Resilience Act forventer, at producenter ved, hvad der er i hver release, og håndterer dens sårbarheder, med rapporteringsforpligtelser fra september 2026. I Azure Pipelines kommer den dokumentation fra de tasks og scannere, du kobler ind i hver pipeline. CRACI producerer den ud fra build-registreringen og eksporterer SBOM'er som CycloneDX eller SPDX. Det automatiserer en væsentlig del af den indsigt i og dokumentation for softwareforsyningskæden, som en virksomhed har brug for i sin bredere CRA-proces; intet af værktøjerne gør alene et produkt compliant.
Flyt en pipeline til CRACI
GitHubs eget GitHub Actions Importer konverterer Azure DevOps-pipelines til GitHub Actions-workflows. GitHub sigter mod, at 80 % af hvert workflow konverteres automatisk, og siger, at hvert konverteret workflow bør gennemgås, før det kører i produktion, så regn med noget manuelt arbejde. Når en pipeline kører som et GitHub Actions-workflow, kører den på CRACI med én linje:
runs-on: craci
Kørslerne vises stadig i GitHubs brugerflade. Læs mere om SBOM-generering under buildet, se alternativer til Azure Pipelines, sammenlign CI/CD-platforme, eller se priser.
Kør ét rigtigt build, og sammenlign
Flyt én pipeline til et GitHub Actions-workflow på CRACI, og læg dets SBOM og netværkstrace ved siden af det, Azure Pipelines fortæller dig i dag.
Book en demo