Your CI pipelines should be code: introducing the Dagger Go SDK
October 25th, 2022
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 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.