Dagger Node.js SDK
What is the Dagger Node.js SDK?
The Dagger Node.js SDK contains everything you need to develop CI/CD pipelines in Node.js, and run them on any OCI-compatible container runtime.
Currently the Node.js SDK consists of:
- A Node.js package
- This documentation
Who is it for?
The Dagger Node.js SDK may be a good fit if you are...
- Your team's "designated devops person", hoping to replace a pile of artisanal scripts with something more powerful.
- A platform engineer writing custom TypeScript tooling, with the goal of unifying continuous delivery across organizational silos.
The Dagger Node.js SDK may not be a good fit if you are...
- Someone who loves writing YAML all day, thank you very much.
- A container skeptic: the less containers are involved, the happier you are.
How does it work?
- Your Node.js program imports the Dagger Node.js package.
- Using the Node.js package, your program opens a new session to a Dagger Engine: either by connecting to an existing engine, or by provisioning one on-the-fly.
- Using the Node.js package, your program prepares API requests describing pipelines to run, then sends them to the engine. The wire protocol used to communicate with the engine is private and not yet documented, but this will change in the future. For now, the Node.js package is the only documented API available to your program.
- When the engine receives an API request, it computes a Directed Acyclic Graph (DAG) of low-level operations required to compute the result, and starts processing operations concurrently.
- When all operations in the pipeline have been resolved, the engine sends the pipeline result back to your program.
- Your program may use the pipeline's result as input to new pipelines.