Vertailu
DevSecOps-työkalut sovellustietoturvaan vertailussa
DevSecOps-työkalut tuovat tietoturvatarkistukset ohjelmistotoimituksen jokaiseen vaiheeseen ensimmäisestä commitista julkaisubuildiin. Tässä on kymmenen työkalua, niiden kattamat vaiheet ja se, mihin CRACI, joka suojaa ja tallentaa itse buildin, sijoittuu niiden joukossa.
Päivitetty
Kenelle tämä on
Tämä sivu on tiimeille, jotka valitsevat sovellustietoturvatyökaluja DevSecOps-putkeen tai tarkistavat, mihin nykyinen työkalukokonaisuus jättää aukkoja. Me teemme CRACI:a, joten ota se huomioon. CRACI kattaa putken yhden vaiheen, buildin, ja useimmat tässä esitellyt työkalut kattavat muita. Jokainen väite muista tuotteista perustuu kyseisen toimittajan omaan dokumentaatioon, ja useimmista tuotteista on pidempi CRACI vs. X -sivu.
Mitä DevSecOps-työkalut kattavat
DevSecOps-putki tarkistaa ohjelmiston useassa kohdassa, ja kukin työkalutyyppi tarkastelee eri kohtaa. Yksikään tuote ei kata jokaista riviä yhtä syvällisesti.
| Ominaisuus | Mitä se tarkistaa | Missä se toimii | Esimerkkejä tällä sivulla |
|---|---|---|---|
| SAST | Virheet tiimisi kirjoittamassa koodissa | IDE, pull requestit, CI | Snyk Code, CodeQL, Checkmarx, Semgrep, Coverity |
| Salaisuuksien skannaus | Koodiin päätyneet avaimet ja tokenit | Pull requestit, push protection | GitHub Secret Protection, Semgrep Secrets, Aikido |
| SCA | Riippuvuuksien tunnetut haavoittuvuudet ja lisenssit | Manifestit, lukitustiedostot, lähdekoodi, CI | Snyk, Black Duck, Mend, Endor Labs, Semgrep |
| IaC- ja konttiskannaus | Virheelliset asetukset ja haavoittuvat kuvat | Repositoriot, rekisterit, CI | Snyk IaC ja Container, Trivy, Aikido |
| DAST | Haavoittuvuudet käynnissä olevassa sovelluksessa | Staging- tai testiympäristöt | Checkmarx One, GitLab Ultimate, Aikido |
| Buildin ja CI/CD-putken tietoturva | Mitä buildi haki, mihin se otti yhteyttä ja mitä se tuotti | CI-runneri jobin ajon aikana | CRACI, StepSecurity, Cycode Cimon |
| ASPM | Riskit kaikissa edellä mainituissa | Yhdistetyt repositoriot, putket ja skannerit | Apiiro, Cycode, OX Security, Legit |
Buildi on vaihe, jonka useimmat työkaluketjut jättävät väliin. Skannerit tarkistavat koodin ja manifestit ennen buildia ja käynnissä olevan sovelluksen sen jälkeen, mutta buildissa riippuvuudet todella ratkaistaan ja ladataan, ja siellä vaarantunut paketti tai CI-toiminto ajetaan pääsyllä salaisuuksiisi.
Miten valita
- Alusta vai alansa paras? Yksi alusta tarkoittaa yhtä sopimusta, yhtä hallintanäkymää ja yhtä käytäntökokonaisuutta. Erikoistuneet työkalut menevät yleensä syvemmälle omassa vaiheessaan.
- Kuka korjaa löydökset? IDE:ssä ja pull requesteissa toimivat työkalut tuovat löydökset kehittäjien eteen, kun koodi on vielä tuoretta. Tarkista, miten kukin työkalu priorisoi, sillä hälytysten määrä ratkaisee, reagoiko niihin kukaan.
- Mitä versionhallintaa ja CI:tä käytät? GitHub ja GitLab sisällyttävät tietoturvan omiin alustoihinsa. Useimmat riippumattomat työkalut kattavat useita CI-järjestelmiä. CRACI tukee nyt vain GitHub Actionsia, ja GitLab CI ja Jenkins ovat tiekartalla.
- Valvooko mikään buildia? Kysy, mitä työkalusi tietävät julkaisubuildista: mitä paketteja se haki ja mihin osoitteisiin se otti yhteyttä.
- Mitä sinun on luovutettava? Asiakkaat, auditoijat ja säädökset, kuten EU:n kyberkestävyyssäädös (Cyber Resilience Act), pyytävät yhä useammin SBOM:ia jokaisesta julkaisusta ja kirjausta siitä, miten haavoittuvuudet käsiteltiin.
- Miten haluat maksaa? Kehittäjä-, committeri- tai osallistujakohtaisesti, tilauksen mukaan tai tarjouksesta.
Yhdellä silmäyksellä
Kymmenen tuotetta ei mahdu yhteen taulukkoon, joten ne on jaettu kahteen taulukkoon samoilla riveillä. "Ei ilmoitettu" tarkoittaa, että lähteinä käyttämämme toimittajien sivut eivät kerro asiasta suuntaan tai toiseen. Hinnat ovat syyskuulta 2026.
Sovellustietoturvan kokonaisuudet ja skannerit
| Ominaisuus | CRACI | Snyk | Checkmarx One | Black Duck | Mend.io | Endor Labs | Semgrep |
|---|---|---|---|---|---|---|---|
| SAST omalle koodillesi | Snyk Code | Coverity | Mend SAST | Tekoälypohjainen SAST | Semgrep Code | ||
| Riippuvuuksien haavoittuvuudet (SCA) | Tallennetusta buildista, arvioidaan jatkuvasti uudelleen | Supply Chain | |||||
| Salaisuuksien skannaus | Ei ilmoitettu | Ei ilmoitettu | Ei ilmoitettu | Semgrep Secrets | |||
| IaC-skannaus | Snyk IaC | Ei ilmoitettu | Ei ilmoitettu | Ei ilmoitettu | Ei ilmoitettu | ||
| Konttiskannaus | Snyk Container | Ei ilmoitettu | Ei ilmoitettu | Ei ilmoitettu | |||
| DAST | Ei ilmoitettu | Ei ilmoitettu | Ei ilmoitettu | Ei ilmoitettu | Ei ilmoitettu | ||
| Priorisointi reachability-analyysin perusteella | Exploitable Path | Funktiotasolla | |||||
| Riippuvuudet tallennetaan buildin aikana | Paketit tunnistava välityspalvelin runnerilla | Manifestit ja lukitustiedostot | Ladattu lähdekoodiarkisto | Skannaa koodia ja binäärejä | Skannaa buildin jälkeen | Analysoi lähdekoodia | Lukee riippuvuudet koodista |
| Buildin verkon egress-käytäntö | Fail closed | ||||||
| Artefaktien allekirjoitetut alkuperätiedot | Ei allekirjoitettuja alkuperätietoja | Ei ilmoitettu | Ei ilmoitettu | Ei ilmoitettu | Ei ilmoitettu | endorctl | Ei ilmoitettu |
| CI-järjestelmät | GitHub Actions nyt; GitLab CI ja Jenkins tiekartalla | IDE, CLI, SCM ja CI | Jenkins, TeamCity, Azure DevOps, GitLab ja muita | ||||
| Hinnoittelu | $0.002 vCPU-minuutilta ($0.004 kahdella vCPU:lla), mitataan sekunneittain; ei kuukausimaksua | Ilmaistaso; Team alkaen $25 kuukaudessa | Tarjouksesta | Tarjouksesta | Enintään $1,000 kehittäjää kohden vuodessa | Ilmainen Developer-taso; maksulliset tasot myynnin kautta | Ilmainen enintään 10 kehittäjälle; Teams alkaen $30 kehittäjää kohden kuukaudessa |
- Sisältyy
- Ei sisälly
- Tiekartalla
Alustojen omat ja kaiken kattavat
| Ominaisuus | CRACI | GitHub (GHAS) | GitLab Ultimate | Aikido |
|---|---|---|---|---|
| SAST omalle koodillesi | CodeQL | Kaikki tasot | ||
| Riippuvuuksien haavoittuvuudet (SCA) | Tallennetusta buildista, arvioidaan jatkuvasti uudelleen | Dependabot-hälytykset | Riippuvuuksien skannaus | |
| Salaisuuksien skannaus | Secret Protection | Kaikki tasot | ||
| IaC-skannaus | Ei ilmoitettu | Ei ilmoitettu | ||
| Konttiskannaus | Ei ilmoitettu | |||
| DAST | Ei ilmoitettu | Ultimate | ||
| Priorisointi reachability-analyysin perusteella | Ei ilmoitettu | Ei ilmoitettu | Funktiotasolla | |
| Riippuvuudet tallennetaan buildin aikana | Paketit tunnistava välityspalvelin runnerilla | Manifestit ja lähetetyt tiedot | Lukitustiedostot ja riippuvuusgraafin viennit | Manifestit ja lukitustiedostot |
| Buildin verkon egress-käytäntö | Fail closed | Omat hallintakeinosi itse ylläpidetyillä runnereilla | ||
| Artefaktien allekirjoitetut alkuperätiedot | Ei allekirjoitettuja alkuperätietoja | Artefaktiattestaatiot | SLSA 1.0 -lausunto | Ei ilmoitettu |
| CI-järjestelmät | GitHub Actions nyt; GitLab CI ja Jenkins tiekartalla | GitHub | GitLab CI/CD | GitLab, Jenkins, Bitbucket, CircleCI ja muita |
| Hinnoittelu | $0.002 vCPU-minuutilta ($0.004 kahdella vCPU:lla), mitataan sekunneittain; ei kuukausimaksua | $19 ja $30 committeria kohden kuukaudessa | Premium $29 käyttäjää kohden kuukaudessa; Ultimate sopimushinnalla | Ilmainen tilaus; maksulliset alkaen $350 kuukaudessa |
- Sisältyy
- Osittain
- Ei sisälly
- Tiekartalla
CRACI
CRACI on GitHub Actionsin runneri eikä runnerille asennettava agentti. Vaihdat runs-on-arvoksi
craci, ja kun kukin jobi ajetaan omassa virtuaalikoneessaan, paketit tunnistava välityspalvelin tallentaa jokaisen paketin,
jonka jobi hakee, myös CI-välimuisteista palautetut paketit. Kunkin jobin SBOM ilmoittaa kattavuutensa, ja sen voi viedä
CycloneDX- tai SPDX-muodossa. Ennen jobin käynnistymistä validoitu egress-käytäntö noudattaa fail closed -periaatetta. API palauttaa SBOM:t, verkkojäljet
ja alkuperätiedot, ja CRACI arvioi toimitetun ohjelmiston SBOM:eja jatkuvasti uudelleen. Mukana ovat priorisointi, ohjaus vastuussa oleville
tiimeille ja käytäntöportit, jotka voivat estää buildin löydösten tai lisenssien perusteella. Buildit ovat noin kaksi kertaa nopeampia kuin
GitHubin ylläpitämillä runnereilla.
CRACI ei ole oikea valinta SAST-, salaisuus-, IaC-, kontti- tai DAST-skannaukseen, reachability-analyysiin eikä nyt muihin CI-järjestelmiin kuin GitHub Actionsiin (GitLab CI ja Jenkins ovat tiekartalla). Valitse näihin vaiheisiin jokin alla olevista työkaluista. Lue lisää buildin aikaisesta SBOM-generoinnista ja hinnoittelusta tai varaa demo ja katso GitHub Actions -buildin tallenne.
Sovellustietoturvan kokonaisuudet ja skannerit
Snyk
Snyk on kehittäjälähtöinen alusta: SCA sekä Snyk Code (SAST), Snyk Container ja Snyk IaC, jotka toimivat IDE:ssä,
CLI:ssä, versionhallintaintegraatioissa ja CI:ssä. Se priorisoi riippuvuuslöydökset reachability-analyysin, hyödyntämisen kypsyyden, EPSS:n ja CVSS:n perusteella
ja avaa päivityksiä koskevia pull requesteja. Paras tiimeille, jotka haluavat kehittäjien korjaavan ongelmia editorista
alkaen. Huomaa: sen riippuvuuspuu muodostetaan manifesteista ja lukitustiedostoista, ja
snyk sbom -komento on käytettävissä vain Enterprise-tilauksissa.
CRACI vs. Snyk
Checkmarx One
Checkmarx One on laaja sovellustietoturva-alusta: SAST, SCA, salaisuudet, IaC, API-tietoturva, DAST, kontit ja suoja haitallisia paketteja vastaan, ja päällä ASPM-kerros. Sen SCA käyttää hyödynnettävien polkujen analyysia, ja käytännöt voivat katkaista buildeja. Paras organisaatioille, jotka haluavat sovellustietoturvan testauksen yhdeltä toimittajalta. Huomaa: GitHub Action lataa lähdekoodistasi zip-arkiston skannattavaksi (SCA Resolver voi analysoida sen sen sijaan omissa tiloissasi), ja hinnoittelu perustuu tarjoukseen. CRACI vs. Checkmarx One ja vaihtoehdot Checkmarxille
Black Duck
Black Duck löytää avoimen lähdekoodin, missä se sitten piileekin: paketinhallinnan skannaukset, allekirjoitus- ja koodinpätkäskannaus sekä ajettavien tiedostojen ja laiteohjelmistojen binäärianalyysi ilman lähdekoodia. Sen KnowledgeBase seuraa yli 2 750 lisenssiä, ja Coverity tuo SAST:n 22 kielelle. Paras koodille, jolla on pitkä historia kopioitua tai mukaan sisällytettyä avointa lähdekoodia, ja kolmansien osapuolten binäärien tarkastamiseen. Huomaa: hinnoittelu perustuu tarjoukseen, ja sen Fix PR:t kattavat suorat riippuvuudet. CRACI vs. Black Duck
Mend.io
Mend AppSec yhdistää Mend SCA:n, joka seuraa kutsugraafia transitiivisten riippuvuuksien läpi, ja Mend SAST:n, joka tukee yli 30:tä kieltä. Mend Renovate pitää riippuvuudet ajan tasalla vähintään 90 paketinhallintatyökalussa, ja Renovaten CLI on ilmainen. Paras tiimeille, joilla on suuri työjono ja jotka haluavat priorisoinnin ja automaattiset päivitykset yhdessä. Huomaa: Mendin oma dokumentaatio suosittelee skannaamista buildivaiheen jälkeen, joten tarkkuus riippuu siitä, missä kohtaa putkea ajat sen. CRACI vs. Mend.io
Endor Labs
Endor Labs on rakennettu funktiotason reachability-analyysin ympärille: se seuraa koodipolkuja lähdekoodistasi haavoittuvaan funktioon suorissa ja transitiivisissa riippuvuuksissa. Lisäksi siinä on päivitysten vaikutusanalyysi, korjauksia takaisinporttaava Endor Patches, tekoälypohjainen SAST, salaisuuksien ja konttien skannaus, Package Firewall ja artefaktien allekirjoitus. Paras tiimeille, jotka hukkuvat riippuvuushälytyksiin. Huomaa: sen inventaario perustuu lähdekoodin analyysiin, eikä se aja tai rajoita buildejasi. CRACI vs. Endor Labs
Semgrep
Semgrepin sovellustietoturva-alusta yhdistää Semgrep Coden (SAST), Semgrep Supply Chainin (SCA) ja Semgrep Secretsin. Supply Chain luokittelee löydökset saavutettaviin, ehdollisesti saavutettaviin ja saavuttamattomiin, ja Semgrepin mukaan tämä vähentää vääriä positiivisia jopa 98 %. Se tarkistaa myös lisenssit, tunnistaa haitalliset riippuvuudet ja vie CycloneDX-muotoisia SBOM:eja. Paras tiimeille, jotka jo kirjoittavat Semgrep-sääntöjä, tai pienille tiimeille: ilmainen tilaus kattaa enintään 10 kehittäjää. Huomaa: maksulliset tuotteet hinnoitellaan erikseen, alkaen $30 kehittäjää kohden kuukaudessa Codesta tai Supply Chainista Teams-tilauksessa.
Alustojen omat ja kaiken kattavat
GitHub Advanced Security
GitHub myy Secret Protectionia ja Code Securitya (CodeQL, Copilot Autofix, riippuvuuksien tarkastus) kaikkiin GitHubin tilauksiin sisältyvien riippuvuusgraafin ja Dependabotin lisäksi. Artefaktiattestaatiot tuovat allekirjoitetut alkuperätiedot SLSA v1.0 Build Level 2 -tasolla. Paras tiimeille, jotka ovat jo GitHubissa ja haluavat tietoturvan pull requesteihin. Huomaa: riippuvuusgraafi kuvaa repositorion manifesti- ja lukitustiedostoja, ja yksityiset repositoriot tarvitsevat maksullisia tuotteita varten Team- tai Enterprise-tilauksen. CRACI vs. GitHub Advanced Security
GitLab Ultimate
GitLab rakentaa tietoturvaskannauksen GitLab CI/CD:hen. Perustason SAST ja salaisuuksien tunnistus sisältyvät kaikkiin tasoihin; riippuvuuksien skannaus, jatkuva haavoittuvuusskannaus, DAST ja vaatimustenmukaisuusominaisuudet kuuluvat Ultimateen. Konttiskannaus voi tuottaa CycloneDX-muotoisen SBOM:n, ja runnerit voivat tuottaa SLSA 1.0 -alkuperälausunnon. Paras tiimeille, jotka haluavat versionhallinnan, CI:n ja tietoturvaskannauksen yhdeltä toimittajalta. Huomaa: sen skannerit lukevat lukitustiedostoja ja riippuvuusgraafin vientejä, ja Ultimate hinnoitellaan sopimuksen mukaan. CRACI vs. GitLab CI
Aikido
Aikido kokoaa SCA:n, SAST:n, salaisuudet, IaC:n, pilven tietoturvatilan, kontit, DAST:n ja lisenssiskannauksen yhteen hallintanäkymään. Sen SCA käyttää funktiotason reachability-analyysiä, AutoFix avaa pull requesteja, ja ilmainen Safe Chain -työkalu estää tunnetut haittaohjelmat npm- ja PyPI-asennuksissa. Paras pienemmille tiimeille, jotka haluavat laajan kattavuuden nopeasti. Huomaa: riippuvuudet tulevat manifesteista ja lukitustiedostoista, ja sen SOC 2- ja ISO 27001 -raportit ovat saatavilla Advanced-tilauksesta alkaen. CRACI vs. Aikido
ASPM-alustat
Sovellustietoturvan tilanhallinnan (ASPM) alustat toimivat skannerien päällä. Ne yhdistyvät repositorioihisi, putkiisi ja tietoturvatyökaluihisi, yhdistävät löydökset ja priorisoivat riskit koko kehityksen elinkaaren ajalta. Apiiro kartoittaa arkkitehtuurisi koodista ajoaikaan Risk Graphissaan. Cycode yhdistää omat skannerinsa yli 100 liittimeen. OX Security kokoaa kolmansien osapuolten löydökset ja tarkistaa CI/CD-ympäristön tietoturvatilan. Legit Security pitää inventaariota ohjelmistokehityksen (SDLC) järjestelmistä ja niiden tietoturvakontrolleista. Kaikkia neljää verrataan tarkemmin ohjelmistotoimitusketjun tietoturvatyökalujen sivulla.
Buildin ja CI/CD-putken tietoturva
Yllä olevat skannerit tarkistavat koodia, riippuvuuksia ja käynnissä olevia sovelluksia. Buildin tietoturvatyökalut valvovat itse CI-jobia. StepSecurity Harden-Runner on olemassa oleville GitHub Actions -runnereillesi asennettava agentti, joka yhdistää lähtevät yhteydet, prosessit ja tiedostokirjoitukset ne aiheuttaneeseen työnkulun vaiheeseen ja voi estää sallittujen kohteiden luettelon ulkopuolisen lähtevän liikenteen. Cycoden Cimon on CI-jobeille tarkoitettu eBPF-agentti, jossa on vastaava valvonta. CRACI vs. StepSecurity Tämän listan kärjessä oleva CRACI sen sijaan korvaa runnerin.
CRACI verrattuna kuhunkin työkaluun
- CRACI vs. Snyk Mitä manifestisi ilmoittavat vs. mitä buildisi teki.
- CRACI vs. Aikido Laaja AppSec-kokonaisuus vs. deterministinen buildin näyttö.
- CRACI vs. Sonatype Rekisterin portinvartiointi ja SCA vs. buildin näyttö.
- CRACI vs. Black Duck Koodin, koodinpätkien ja binäärien skannaus vs. buildin näyttö.
- CRACI vs. Mend.io Riippuvuuksien skannaus vs. riippuvuuksien havainnointi.
- CRACI vs. Checkmarx AppSec-testausalusta vs. buildin aikainen näyttö.
- CRACI vs. Endor Labs Reachability-analyysi vs. buildin havainnointi.
- CRACI vs. JFrog Artefaktien hallinta vs. buildikohtainen näyttö.
- CRACI vs. GitHub Advanced Security Koodin, salaisuuksien ja riippuvuuksien skannaus vs. buildin näyttö.
- CRACI vs. Dependabot Versiopäivitykset vs. tieto siitä, mitä buildisi käyttivät.
Rinnakkain
Useita työkaluja yhdellä sivulla silloin, kun valitset kategoriaa etkä yksittäistä tuotetta.
DevSecOps-työkalut: usein kysyttyä
Lyhyet vastaukset yleisiin kysymyksiin DevSecOps- ja sovellustietoturvatyökaluista
Mitä DevSecOps-työkalut ovat?
DevSecOps-työkalut rakentavat tietoturvatarkistukset ohjelmistojen toimitusputkeen sen sijaan, että ne jätettäisiin loppuvaiheen tarkastukseen. Päätyypit ovat SAST omalle koodille, salaisuuksien skannaus, riippuvuuksien ohjelmistokoostumuksen analyysi (SCA), IaC- ja konttiskannaus, käynnissä olevaa sovellusta testaava DAST, buildin ja CI/CD-putken tietoturva sekä ASPM-alustat, jotka yhdistävät kaikkien näiden löydökset.
Mitä eroa on DevSecOpsilla ja sovellustietoturvalla?
Sovellustietoturva on tavoite: ohjelmisto ilman hyödynnettäviä virheitä. DevSecOps on tapa työskennellä sitä kohti: tietoturvatarkistukset ajetaan automaattisesti kehityksen ja toimituksen jokaisessa vaiheessa, ja niistä vastaavat ohjelmistoa rakentavat tiimit eikä erillinen portti julkaisun yhteydessä.
Millä DevSecOps-työkalulla kannattaa aloittaa?
Aloita sieltä, missä riskisi on. Useimmat tiimit aloittavat SCA:lla ja salaisuuksien skannauksella, koska haavoittuvat riippuvuudet ja vuotaneet avaimet ovat yleisiä ja helppoja löytää, ja lisäävät sitten SAST:n. Jos sinun on osoitettava, mitä kuhunkin julkaisuun meni, tai hallittava, mihin buildisi pääsevät, lisää buildin ja CI/CD-putken tietoturva. Ohjelmat, joissa on paljon repositorioita ja skannereita, lisäävät usein päälle ASPM:n.
Mitä eroa on SAST:lla, DAST:lla ja SCA:lla?
SAST lukee omaa lähdekoodiasi ja etsii virheitä, kuten injektiohaavoittuvuuksia. DAST testaa käynnissä olevaa sovellusta ulkopuolelta, kuten hyökkääjä tekisi. SCA tarkistaa avoimen lähdekoodin ja kolmansien osapuolten komponentit, joista olet riippuvainen, tunnettujen haavoittuvuuksien ja lisenssiongelmien varalta.
Tarvitsenko kaiken kattavan DevSecOps-alustan?
Et välttämättä. Aikidon, Checkmarx Onen ja GitLab Ultimaten kaltaiset alustat kokoavat monta skanneria yhden sopimuksen ja hallintanäkymän taakse, mikä sopii pienemmille tiimeille ja keskittämishankkeisiin. Erikoistuneet työkalut menevät yleensä syvemmälle omalla alueellaan, kuten reachability-analyysiin SCA:ssa tai buildin tallentamiseen. Monet tiimit yhdistävät yhden laajan alustan ja yhden tai kaksi erikoistunutta työkalua.
Mihin CRACI sijoittuu DevSecOps-työkaluketjussa?
Buildiin. CRACI on GitHub Actions -jobiesi runneri: se tallentaa paketit, jotka kukin jobi todella haki, CycloneDX- tai SPDX-muotoiseen SBOM:iin, joka ilmoittaa oman kattavuutensa, valvoo buildin verkon egress-käytäntöä ja seuraa jatkuvasti toimittamasi ohjelmiston haavoittuvuuksia. Se ei tee SAST-, salaisuus-, IaC-, kontti- tai DAST-skannausta.
Lisää buildi DevSecOps-putkeesi
Varaa demo ja katso SBOM, verkkojälki ja egress-käytäntö, jotka CRACI tallentaa GitHub Actions -buildista.
Varaa demo