Home / Companies / Dagger / Blog / May 2023

May 2023 Summaries

3 posts from Dagger

Filter
Month: Year:
Post Summaries Back to Blog
Dagger 0.6 introduces a new terminal user interface (TUI) that displays a full-blown DAG of operations and their evaluation, similar to git log --graph. The TUI is designed for rapid iteration, showing live progress as you run a command, and leaving all output in your terminal scrollback. It represents parallel pipelines with vertical columns, operations within pipelines with block characters, and dependencies across pipelines with grey output names. The new TUI is an improvement over the current LogOutput format, which alternates between active operations and shows chunks of output at a time, but can be cluttered and not very pretty. Dagger 0.6 also includes debugging capabilities, such as enabling GraphQL API calls for `dagger run --debug`, and releases new versions of its SDKs with bug fixes and improvements. Additionally, the documentation has been improved with a new cookbook and guides on using Dagger with alternative OCI runtimes.
May 25, 2023 3,239 words in the original blog post.
The blog post shares the story of Kevin Minehart, a software engineer at Grafana Labs who uses Dagger to create bespoke Grafana packages for end-users. Previously, Kevin built every package using a remote CI engine, which was a time-consuming process that consumed most of his day. With Dagger, he is able to build packages locally in 8 minutes or less, a build-time improvement of ~75%. The solution allows Kevin and his team to quickly and consistently build Grafana packages for multiple architectures and platforms, including Linux, Mac OS, and Windows. The built-in caching produces a significant increase in performance, eliminating much of the FUD of the previous process. The Dagger pipeline is invoked as a single process which contains all the business logic necessary to produce a final package, making it easier for the team to continuously improve the pipeline by adding tests, reusing Go modules and adopting existing best practices.
May 09, 2023 2,317 words in the original blog post.
Most organizations have Dockerfiles somewhere, and they might be managed by another team or only interacted with the built images. If you're using Dagger to turn your pipelines into code, you have a couple of options on how to handle your Dockerfiles: build from existing Dockerfiles or turn them into Dagger code. Building from existing Dockerfiles is easy and can be done in Python, Go, Node.js, or via the GraphQL API. Turning Dockerfiles into Dagger code means taking full advantage of both Dagger and your language of choice to create testable, extensible builds and pipelines. This approach also offers more control with types, functions, loops, and conditionals. Fortunately, an excellent blog post and technical guide illustrate this approach in Go, Python, and Node.js, showing how to understand and break down a Dockerfile into steps, create a Dagger client, and write a pipeline to replicate the Dockerfile build process. A handy table is also provided to map common Dockerfile commands to their Dagger equivalents.
May 09, 2023 2,096 words in the original blog post.