Introducing the Dagger GraphQL API
Read more

Your CI pipelines should be code: introducing the Dagger Go SDK

October 25th, 2022
Go Gopher with Daggernaut

Today we are proud to introduce the Dagger Go SDK: a new way to develop your CI/CD pipelines as code and run them anywhere.

The Dagger Go SDK may be a good fit if you are...

  • A Go developer wishing your CI pipelines were Go code that you can run locally in seconds, instead of YAML that can only run on a proprietary service
  • A developer who needs CI/CD, and is looking for an excuse to learn Go
  • Your team's "designated devops person", hoping to replace a pile of artisanal scripts with something more powerful
  • A platform engineer writing custom Go tooling, with the goal unifying continuous delivery across organizational silos
  • A cloud-native developer advocate or solutions engineer, looking to demonstrate a complex integration on short notice

The Dagger Go SDK may not be a good fit if you are...

  • A developer who doesn't know Go, and is not interested in learning it. If you are looking for another SDK, let us know here. We will notify you when your SDK is ready.
  • A "designated devops person" who doesn't think of themselves as a developer - nothing makes you happier than a battle-hardened shell script.
  • Someone who loves programming in YAML, thank you very much.
  • A container skeptic: the less containers are involved, the happier you are.

In the future, we will release more SDKs. Our ultimate goal is to ensure all developers can develop their CI/CD pipelines in the same way they develop the rest of their code. If you are looking for a different SDK, let us know. If you fill out the form, we will notify you when your SDK is ready!

What is Dagger again?

Dagger is a programmable CI/CD engine that runs your pipelines in containers.

Programmable: develop your CI/CD pipelines as code, in the same programming language as your application.

Runs your pipelines in containers: Dagger executes your pipelines entirely as standard OCI containers. This has several benefits:

  • Instant local testing
  • Portability: the same pipeline can run on your local machine, a CI runner, a dedicated server, or any container hosting service.
  • Superior caching: every operation is cached by default, and caching works the same everywhere
  • Compatibility with the Docker ecosystem: if it runs in a container, you can add it to your pipeline
  • Cross-language instrumentation: teams can use each other’s tools without learning each other’s language

Dagger Diagram

Dagger Go SDK in Action

In this demo, you will see how quickly you can create a Go CI tool that builds a Go application with multiple architectures and Go versions using the Dagger Go SDK.

Want to try it yourself? Check out our Getting Started Guide.

Want to Get Involved?

We have lots of ways to contribute and stay engaged with Dagger updates. We look forward to seeing you in our community forum: