Skip to content

Enzonic CI

GitHub biltegietarako CI, Enzonic runner-etan.

Enzonic CI-k zure probak eta eraikuntzak exekutatzen ditu push eta pull request bakoitzean, lan bakoitza bere sandboxean, Enzonic-ek berak operatzen dituen Linux runner-etan. Zuzeneko logak, mendekotasun-cacheak eta artefaktuak kontu eta plan berean, Deploy eta Databases-ekin batera.

Plan guztietan dago sartuta, Free barne. CI minutuak, aldi bereko lanak eta gordetze-denbora zure planarekin datoz.

Enzonic CI: hiru biltegiren pipeline-ak azken exekuzioekin eta konfigurazio-arazo baten azalpenarekin

GitHub Actions baino azkarragoa, workflow berean

Workflow bat, bi plataformetan exekutatua: npm ci eta vitest suitea dituen Node lan bat, eta go test duen Go lan bat. Zenbat eta baxuago, hobe.

UrratsaEnzonic CIGitHub Actions
Exekuzio osoa, push-etik lan guztiak amaitu arte (cache beroak)37 s
Checkout1 s
npm ci cache berarekin3 s
go test cache hotzekin20 s
Go lana, hasieratik amaierara (cache beroak)11 s

Non gauden motelago: lockfile-a aldatu ondoren lehen npm ci-k 6.8 s behar du, GitHub-en berriz 4 s, npm-k erauzten duen fitxategi bakoitza lanaren sandboxetik pasatzen delako. Lockfile berarekin egiten den hurrengo exekuzio orok 0.09 s behar du.

November 1, 2026-an neurtu zen, bi plataformetan .github/workflows/ci.yml berdinarekin (GitHub ubuntu-latest-en), benchmark biltegi batean. 3 exekuzioren erdiko balioak, segundotan; exekuzio beroetan plataforma bakoitzaren cacheak prest zeuden. GitHub-en balio hotzak lehen exekuzio bakar batetik datoz.

Jada ezagutzen duzun konfigurazioa

Idatzi .enzonic/ci.yml, edo mantendu zure GitHub Actions workflow-ak: Enzonic CI-k .github/workflows-en onartutako azpimultzoa exekutatzen du eta exekutatu ezin duena jakinarazten du, esaterako onartu gabeko ekintzak, Windows edo macOS runner-ak eta berrerabilitako workflow-ak, mezu batekin.

Zerk abiarazten du exekuzioa

  • Push-ak eta etiketak
  • Pull request-ak
  • Programazioak
  • Eskuzko exekuzioak kontsolatik eta APItik hasitako exekuzioak

Lanak Linux runner-etan exekutatzen dira. Lan bakoitzak bere gVisor sandbox-a du, sare pribatuetara sarbiderik gabe.

.enzonic/ci.yml
name: CI

on:
  push:
    branches: [main]
  pull_request:

jobs:
  test:
    image: node:22-bookworm-slim
    services:
      postgres:
        image: postgres:17-alpine
        env:
          POSTGRES_PASSWORD: postgres
    env:
      DATABASE_URL: postgres://postgres:postgres@postgres:5432/postgres
    steps:
      - name: Install
        run: npm ci
      - name: Test
        run: npm test

Adibide bat. Dokumentazioko CI erreferentziak onartutako gako eta ekintza guztiak zerrendatzen ditu.

Push eta pull request guztiak zerrenda bakarrean

Konektatutako biltegi guztien exekuzioak, egoerarekin, gertaerarekin, adarrarekin, commit-arekin eta iraupenarekin. Zerrenda eguneratzen da zerbait exekutatzen ari den bitartean, eta exekuzio bakoitzak egiaztapen bat jakinarazten du GitHub-en.

Enzonic CI: pipeline bakoitzaren exekuzioak, egoerarekin, adarrarekin, commit-arekin eta iraupenarekin

Zer egiten du

Matrize-eraikuntzak eta lanen mendekotasunak
Banatu lana lanetan, zabaldu matrize baten gainean eta ordenatu lanak needs bidez.
Zerbitzu-edukiontziak
Abiarazi Postgres edo beste zerbitzu bat lan baten ondoan; exekuzioak irauten duen bitartean lanaren sarera batzen da.
Sandbox bat lan bakoitzeko
Lan bakoitza bere gVisor sandbox-ean exekutatzen da, bere saretan, sare pribatuetara sarbiderik gabe.
Zuzeneko erregistroak eta artefaktuak
Jarraitu urrats bakoitza exekutatzen den bitartean, berrexekutatu huts egin duten lanak eta deskargatu artefaktuak zure planak gordetzen dituen bitartean.
Pull request seguruak forkeetatik
Forkeetatik datozen pull request-en exekuzioek ez dute sekreturik lehenespenez.
Huts egin duten lanen konponketak
Enzica, Enzonic-en laguntzailea, huts egin duen lanaren logak irakur ditzake eta konponketa bat proposatu, aldaketa guztiak zuk berrikus ditzazun aurretik.

Mendekotasun-cacheak

Cacheak biltegi bakoitzeko gordetzen dira, zure planaren cache-tamainaren barruan.

  • npm
  • pnpm
  • Yarn
  • Bun
  • pip
  • Go
  • Cargo
  • Maven
  • Gradle

CI mugak planaren arabera

CI minutuak hilero berrezartzen dira eta amaitutako lanaren arabera zenbatzen dira. Ordaindutako planek minutu, aldi bereko lan, cache handiagoa eta gordetze-denbora luzeagoa gehitzen dituzte.

PlanaDoakoaDoanStarter$5 hileanPro$10 hileanGrowth$19 hileanBusiness$29 hilean
CI minutuak3,000 hilean5,000 hilean6,000 hilean15,000 hilean60,000 hilean
Aldi berean lanak2461020
Lanaren denbora-muga360 min360 min360 min480 min720 min
Mendekotasun-cachea2 GB5 GB10 GB20 GB50 GB
Gordetako artefaktuak90 egun90 egun90 egun180 egun400 egun
Gordetako logak14 egun30 egun30 egun60 egun90 egun
  • 50% deskontua lehen ordaindutako hilabetean
  • 25% deskontua hilero Enzonic joko-plan ordainduarekin

Prezioak AEB dolarretan. Ordaindutako planak hilero berritzen dira Enzonic saldotik, edo saldoa agortuta dagoenean txartelarekin. Plan doakoak ez du inoiz txartela eskatzen. Kontsolak beti erakusten ditu uneko planaren mugak.

Konparatu muga guztiak enzonic.dev-en

Cloud laguntzak

Doako Pro edo Business denbora eta $500 arteko Cloud kreditua beste batzuentzat eraikitzen dutenentzat.

  • Pro edo Business 3, 6 edo 12 hilabeterako
  • $500 arteko Cloud kreditua zure Enzonic saldoan
  • Diru-laguntza batek Deploy, Databases, CI eta planaren Rapidfile mugak estaltzen ditu
  • Pertsona batek irakurtzen du, normalean egun batzuetan erantzuten da

Aplikatu enzonic.dev-eko formularioarekin. Enzonic kontu doako bat nahikoa da, eta ez da txartelik behar.

  • Kode irekia
  • Ikasleak
  • Irabazi asmorik gabeko erakundeak
  • Startup-ak
  • Hezitzaileak
  • Hackathon-ak

Galderak

Normalean ez. Enzonic CI-k .enzonic/ci.yml irakurtzen du, edo .github/workflows-en onartutako azpimultzoa. Exekutatu ezin dituen urratsak, esaterako Windows eta macOS runner-ak eta berrerabilitako workflow-ak, mezu argi batekin jakinarazten dira, isilean huts egin beharrean.

Konektatu biltegi bat eta utzi hurrengo push-ak exekutatzen.

Aplikazioa Deploy-rekin martxan jartzea, datu-basea ostatatzea edo igoerak ere?