@dagger_ioi
iAccount based inFrance
About this account
- Account based in
- France
- Connected via
- United States App Store
Account-level information from X, not a live location or the device used for a specific post.
A better way to ship. Test any codebase end-to-end, repeatably and at scale. Runs locally, in your CI server, or directly in the cloud.
Joined February 2021
- Tweets1.7K
- Following208
- Followers7.4K
- Likes1.3K
Pinned Tweet
Dagger 0.19 is out, with a LOT of improvements:
- Better performance (more on the way!)
- Run Dagger without Docker
- Local container export
- First-class support for codegen workflows
- Build-an-agent! Run tiny coding agents directly in your workflows, with perfect context
🧵
Dagger retweeted
CI stands for "continuous integration". But integration is actually a discrete event! So "continuous" just means "more frequent", the same way HD means "more pixels".
Now, with agents, integration is getting a whole lot more continuous... I guess this is CI's 4K moment? 😛
Dagger retweeted
“CI workloads are dumb, and running dumb workloads is wasteful. When your architecture boils down to “run shell scripts on VMs”, your scaling options are limited: more VMs or bigger VMs. This amounts to throwing money at the problem […]” many good takes here!
Replying to @solomonstre
At @dagger_io we're building this scheduler, and the software stack to leverage it in your CI.
See dagger.io/blog/the-great-ci-…
Dagger retweeted
At @dagger_io we're building this scheduler, and the software stack to leverage it in your CI.
See dagger.io/blog/the-great-ci-…
Dagger retweeted
Replying to @Altimor
CI will continue to be a bottleneck for most orgs unless there's a true investment in rebuilding the factory with the right primitives. We've been working on it for the past 5 years @dagger_io.
Bigger machines won't fix your CI.
Dagger retweeted
Solomon was ahead of the curve with creating Docker and is ahead again. The discipline associated with (fast) automated testing applied today is a major contributor to the difference between 1x and 100x.
The potential difference between utter failure and spectacular success.
Dagger retweeted
Test workloads are build workloads; test bottlenecks are build bottlenecks.
It's time for a new kind of scheduler, that can run all our builds and tests as an integrated workload rather than dislocated siloes.
Then we'll wonder how we ever tolerated CI this slow and wasteful.
Dagger retweeted
Guys I promise you, emulating Github Actions locally will not fix your CI. Stop doing this to yourselves.
Dagger retweeted
When I want to deep dive into what's happening in CI, I reach for @dagger_io (which is what I use in CI to deploy all the Workers, IaC things, and build 10+ docker images). Dagger provides traces so I can see where the time is being spent (and optimize CI times)
Dagger retweeted
Previously I'd run my entire release process through GitHub CI and one of the key things is GitHub CI would have all of my secrets for release signing. That just doesn't seem like a smart idea anymore. I'm moving my release process client-side. The only thing that matters is it's portable and that's easy enough to do with a Docker container.
Hey maybe I should use @dagger_io. That's a decent sales pitch for Dagger. Run portable, predictable processes client-side to ensure greater security. It's not that I think GitHub is inherently insecure. It's just with the rise of AI it's just getting scary.
Dagger retweeted
What if your CI had a lockfile?
dagger.io/changelog/#a-lockf…
Dagger retweeted
FYI. This week we're moving Dagger Cloud to Absurd by @mitsuhiko. Will share our experience if anyone's interested.
cc @marcosnils @matiaspan26
Dagger retweeted
When the creator of Docker rewrites buildkit, people should pay attention:
nitter.cf/solomonstre/status/204…
FYI, Dagger is about to move off Buildkit, to a cleanroom reimplementation.
This matters beyond Dagger. Buildkit is load-bearing infrastructure for a huge chunk of CI/CD. It has fundamental limitations that are getting harder to work around, but it's too entrenched and complex to just rip out.
We've been chipping away at it for two years, replacing it piece by piece, and it's finally paying off. And we'll make sure the offramp is available to others too...
More once it ships. DM me (here or on discord) if you're curious.
dagger.io/changelog/#project…
Dagger retweeted
Update: we merged it 😅
The next release of Dagger will be buildkit-free.
FYI, Dagger is about to move off Buildkit, to a cleanroom reimplementation.
This matters beyond Dagger. Buildkit is load-bearing infrastructure for a huge chunk of CI/CD. It has fundamental limitations that are getting harder to work around, but it's too entrenched and complex to just rip out.
We've been chipping away at it for two years, replacing it piece by piece, and it's finally paying off. And we'll make sure the offramp is available to others too...
More once it ships. DM me (here or on discord) if you're curious.
dagger.io/changelog/#project…
Dagger retweeted
FYI, Dagger is about to move off Buildkit, to a cleanroom reimplementation.
This matters beyond Dagger. Buildkit is load-bearing infrastructure for a huge chunk of CI/CD. It has fundamental limitations that are getting harder to work around, but it's too entrenched and complex to just rip out.
We've been chipping away at it for two years, replacing it piece by piece, and it's finally paying off. And we'll make sure the offramp is available to others too...
More once it ships. DM me (here or on discord) if you're curious.
dagger.io/changelog/#project…
Dagger retweeted
Say what you want about Jenkins... At least it was open-source.
There's a new cohort of CI vendors who like to make bold claims... Not bold enough to share their code, though!
Dagger retweeted
If you want faster CI, focus on caching.
Dagger remains the only CI platform that caches every operation by default. Zero configuration needed.
That's not a feature you can bolt on: you have to design for incremental execution from day one. Then the performance gains compound👇
Introducing cache control for Dagger modules.
Dagger executes your CI pipelines incrementally: when a pipeline runs twice, it skips work that’s already done and can complete faster. This caching process happens automatically, sparing you the pain of maintaining fragile configuration files.
But until now, only system functions could be cached in this way, and not functions defined in a module...
So, as of Dagger 0.19.4, module functions are cached by default.
To cache module functions by default, we needed a way to know whether your function is pure. A function called deploy() looks the same as build() to the engine, and caching the wrong one would break your pipeline. The solution is to annotate deploy() to let us know that it has a side effect.
That is the purpose of cache control.
dagger.io/blog/cache-control…