Inngest CI
Write your CI in TypeScript, run it on Inngest, and debug every run as one trace.
SDK support
Inngest CI is an Inngest Labs project: early, moving fast, and shaped by your feedback. What's Labs?
@inngest/ci is CI written in TypeScript. Inngest runs each pipeline as a durable function and each job on its own Sandbox, an ephemeral microVM. One run produces one trace that covers the pipeline, its jobs, and every command.
What you can do
- Write plain TypeScript. Use
if, loops,Promise.all, and your own functions. See Pipelines and triggers. - Keep finished work. A retry does not rerun jobs or commands that already passed. See Commands.
- Start a job from another job.
from()starts a job on a copy of another job's machine, like a Docker layer. Caching skips jobs whose inputs are unchanged. - Run the same code locally. Run a pipeline against the Dev Server with your uncommitted changes. See the quick start.
- Get GitHub checks. Each pipeline gets one check, and each job gets one. See Checks and reports.
- Control how pipelines run. Cancel superseded runs, cap concurrency, debounce, throttle, and rate limit pipelines with Inngest flow control.
Start here
- Overview lists what Inngest CI gives you and shows a run.
- Concepts defines pipelines, triggers, jobs, commands, machines, caching, and checks.
- Quick start runs a pipeline on the Dev Server.
- Reference lists options, triggers, command methods, and limits.
Next steps
- About Labs explains what a lab is.
- Sandboxes covers the microVMs that run every job.
- Flow control covers the options a pipeline accepts.
- Example project has pipelines, matrices, caching, and GitHub checks.