A sad reality of many software delivery pipelines is that they become a tangled web of dependencies between independent tools held together with fragile glue code and developers’ sweat and tears.
We can do better though. This talk explores ways of taming these tangled webs through a few tools centered around the concept of directed acyclic graphs (DAGs):
- BuildKit is a low-level DAG execution engine that takes care of hard problems like scheduling, caching and exporting data
- Cue is a configuration language that allows independent systems making up software delivery DAGs to be glued together in a robust, type-checked manner
- These tools can be used independently, but through Dagger they can also be combined into a powerful framework for orchestrating complex software DAGs.