-
Notifications
You must be signed in to change notification settings - Fork 833
Kill the monolith #11373
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Kill the monolith #11373
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
79a732a to
9148da7
Compare
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
Contributor
|
May I know the reason why convert the sdk-dev to Go? I remember that it’s use as a dogfood the sdk itself. However, I can help converting Elixir to Go if you preffered. |
This comment was marked as resolved.
This comment was marked as resolved.
abe1f6d to
7912565
Compare
This comment was marked as resolved.
This comment was marked as resolved.
98fafa1 to
44ede22
Compare
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
4e7b54b to
edc4753
Compare
This comment was marked as resolved.
This comment was marked as resolved.
6 tasks
0bf1b89 to
850882a
Compare
Signed-off-by: kpenfound <[email protected]>
Signed-off-by: kpenfound <[email protected]>
Signed-off-by: Solomon Hykes <[email protected]>
Signed-off-by: Solomon Hykes <[email protected]>
Signed-off-by: Solomon Hykes <[email protected]>
Signed-off-by: Solomon Hykes <[email protected]>
This avoids triggering an unresolved issue with 3 layers of nested dagger engines (dagger-in-dagger-in-dagger). Signed-off-by: Solomon Hykes <[email protected]>
Signed-off-by: Yves Brissaud <[email protected]>
Signed-off-by: Yves Brissaud <[email protected]>
Signed-off-by: Yves Brissaud <[email protected]>
… just hardcode uv image Signed-off-by: Solomon Hykes <[email protected]>
Signed-off-by: Solomon Hykes <[email protected]>
Signed-off-by: Solomon Hykes <[email protected]>
…vironment Signed-off-by: Solomon Hykes <[email protected]>
Signed-off-by: Solomon Hykes <[email protected]>
Signed-off-by: Solomon Hykes <[email protected]>
Signed-off-by: Solomon Hykes <[email protected]>
Signed-off-by: Solomon Hykes <[email protected]>
Signed-off-by: Solomon Hykes <[email protected]>
…nction Signed-off-by: Solomon Hykes <[email protected]>
Signed-off-by: Solomon Hykes <[email protected]>
…complete error Signed-off-by: Solomon Hykes <[email protected]>
…engine-dev installclient Signed-off-by: Solomon Hykes <[email protected]>
1c14094 to
fdca3b7
Compare
Contributor
Author
|
All green, let's do this! |
tiborvass
approved these changes
Nov 24, 2025
raykao
pushed a commit
to raykao/dagger
that referenced
this pull request
Dec 9, 2025
* CI: kill the monolith Signed-off-by: Solomon Hykes <[email protected]> * feat: merge php sdk dev inside toolchain Signed-off-by: Tom Chauveau <[email protected]> * feat: add dotnet-sdk-dev toolchain Signed-off-by: Tom Chauveau <[email protected]> * feat: add dotnet SDK Signed-off-by: Tom Chauveau <[email protected]> * chore: remove old dotnet SDK Signed-off-by: Tom Chauveau <[email protected]> * chore: convert dotnet-sdk-dev to dang Signed-off-by: Tom Chauveau <[email protected]> * feat: add rust-sdk-dev toolchain Signed-off-by: Tom Chauveau <[email protected]> * adding java-sdk-dev toolchain Signed-off-by: Yves Brissaud <[email protected]> * WIP: appease go linter Signed-off-by: Solomon Hykes <[email protected]> * go mod tidy Signed-off-by: Solomon Hykes <[email protected]> * fix docs toolchain Signed-off-by: Solomon Hykes <[email protected]> * modules/go: customize display of linting "sub-checks" Signed-off-by: Solomon Hykes <[email protected]> * fix dependency issue in monolith Signed-off-by: Solomon Hykes <[email protected]> * fix linting across toolchains Signed-off-by: kpenfound <[email protected]> * new toolchain: release Signed-off-by: Solomon Hykes <[email protected]> * Change Github Actions to use 'dagger checks' instead of 'dagger call' Signed-off-by: Solomon Hykes <[email protected]> Co-authored-by: Kyle Penfound <[email protected]> * Harmonize version of dang SDK NOTE: this version does not work with dagger v0.19.6 and below. Signed-off-by: Solomon Hykes <[email protected]> * Annotate missing checks Signed-off-by: Solomon Hykes <[email protected]> * remove dead dependencies Signed-off-by: Solomon Hykes <[email protected]> * wip elixir dev module Signed-off-by: kpenfound <[email protected]> * toolchain: typescript-sdk: uncomment docs lint check Signed-off-by: Solomon Hykes <[email protected]> * Fix typescript-sdk toolchain Signed-off-by: Solomon Hykes <[email protected]> * CI: disable test-loading of removed modules Signed-off-by: Solomon Hykes <[email protected]> * improve Python SDK toolchain Signed-off-by: Solomon Hykes <[email protected]> * Polish the Go SDK toolchain Signed-off-by: Solomon Hykes <[email protected]> * chore: fix php sdk dev Signed-off-by: Tom Chauveau <[email protected]> * chore: add missing SDK to all-sdks module list Signed-off-by: Tom Chauveau <[email protected]> * chore: fix the rust SDK dev Signed-off-by: Tom Chauveau <[email protected]> * elixir-dev: use File.withReplaced for publish and syncImage Signed-off-by: kpenfound <[email protected]> * chore: push fix attempt on php sdk (not working yet) Signed-off-by: Tom Chauveau <[email protected]> * chore: cleanup php sdk dev Signed-off-by: Tom Chauveau <[email protected]> * wip: attach dev engine to typescript SDK tests Signed-off-by: Solomon Hykes <[email protected]> * monolith: comment code Signed-off-by: Solomon Hykes <[email protected]> * typescript SDK toolchain: fix bun tests Signed-off-by: Solomon Hykes <[email protected]> * typescript-sdk toolchain: expose bunjs-dev-container Signed-off-by: Solomon Hykes <[email protected]> * gha: remove concurrency group in checks Signed-off-by: Solomon Hykes <[email protected]> * python-sdk toolchain: expose python dev container for debugging Signed-off-by: Solomon Hykes <[email protected]> * python-sdk toolchain: remove typecheck() from exposed checks Signed-off-by: Solomon Hykes <[email protected]> * go mod tidy Signed-off-by: Solomon Hykes <[email protected]> * ci: run checks on latest main commit Signed-off-by: Solomon Hykes <[email protected]> * fix toolchain description display Signed-off-by: Yves Brissaud <[email protected]> Co-authored-by: Solomon Hykes <[email protected]> * fix: lint issues Signed-off-by: Yves Brissaud <[email protected]> * fix(modules/go): optional include/exclude for `modules` list Signed-off-by: Yves Brissaud <[email protected]> * fix: left over from previous lint commit Signed-off-by: Yves Brissaud <[email protected]> * go mod tidy without integration ignored Signed-off-by: kpenfound <[email protected]> * only ignore core/integration/testdata for go toolchain Signed-off-by: kpenfound <[email protected]> * ignore only testdata modules Signed-off-by: kpenfound <[email protected]> * helm-dev toolchain: vendor k3s dependency Signed-off-by: Solomon Hykes <[email protected]> * python-sdk-dev toolchain: vendor dockerd dependency Signed-off-by: Solomon Hykes <[email protected]> * fix testdata linting Signed-off-by: kpenfound <[email protected]> * the key to the universe Signed-off-by: kpenfound <[email protected]> * unvendor dang and fix linting Signed-off-by: kpenfound <[email protected]> * elixir-sdk: implement bump() Signed-off-by: Solomon Hykes <[email protected]> * typescript sdk: implement bump() Signed-off-by: Solomon Hykes <[email protected]> * dotnet SDK: add (no-op) bump function Signed-off-by: Solomon Hykes <[email protected]> * rust sdk: fix bump() Signed-off-by: Solomon Hykes <[email protected]> * ci: run linters in bootstrap, instead of SDK tests This avoids triggering an unresolved issue with 3 layers of nested dagger engines (dagger-in-dagger-in-dagger). Signed-off-by: Solomon Hykes <[email protected]> * sdk/java: add fmt command Signed-off-by: Yves Brissaud <[email protected]> * convert toolchains/security to dang Signed-off-by: Yves Brissaud <[email protected]> * convert toolchains/changelog to dang Signed-off-by: Yves Brissaud <[email protected]> * python-sdk toolchain: remove over-complicated "dockerfile extractor", just hardcode uv image Signed-off-by: Solomon Hykes <[email protected]> * go-sdk: expand ignore filter to include new codegen dependencies Signed-off-by: Solomon Hykes <[email protected]> * Caught stealthy typo which caused ignore filters to be... ignored Signed-off-by: Solomon Hykes <[email protected]> * CI: .env.gha: env-specific configuration for our Github Actions CI environment Signed-off-by: Solomon Hykes <[email protected]> * engine-dev toolchain: relax source filter to un-break the build Signed-off-by: Solomon Hykes <[email protected]> * CI: update "outer engine" pinned commit Signed-off-by: Solomon Hykes <[email protected]> * CI: hardcode absolute path of docker config Signed-off-by: Solomon Hykes <[email protected]> * typescript sdk: remove duplicate code, fix weird dang error, simplify Signed-off-by: Solomon Hykes <[email protected]> * unbreak rebase Signed-off-by: Solomon Hykes <[email protected]> * go toolchain: fancier output + limited parallelism of 'check-tidy' function Signed-off-by: Solomon Hykes <[email protected]> * CI: bump outer engine version Signed-off-by: Solomon Hykes <[email protected]> * fix wrong ignore filter, which caused seemingly unrelated shell auto-complete error Signed-off-by: Solomon Hykes <[email protected]> * tentative fix for php-sdk:generate error caused by missing secret in engine-dev installclient Signed-off-by: Solomon Hykes <[email protected]> --------- Signed-off-by: Solomon Hykes <[email protected]> Signed-off-by: Tom Chauveau <[email protected]> Signed-off-by: Yves Brissaud <[email protected]> Signed-off-by: kpenfound <[email protected]> Signed-off-by: Yves Brissaud <[email protected]> Co-authored-by: Tom Chauveau <[email protected]> Co-authored-by: Yves Brissaud <[email protected]> Co-authored-by: kpenfound <[email protected]> Co-authored-by: Yves Brissaud <[email protected]>
raykao
pushed a commit
to raykao/dagger
that referenced
this pull request
Dec 14, 2025
* CI: kill the monolith Signed-off-by: Solomon Hykes <[email protected]> * feat: merge php sdk dev inside toolchain Signed-off-by: Tom Chauveau <[email protected]> * feat: add dotnet-sdk-dev toolchain Signed-off-by: Tom Chauveau <[email protected]> * feat: add dotnet SDK Signed-off-by: Tom Chauveau <[email protected]> * chore: remove old dotnet SDK Signed-off-by: Tom Chauveau <[email protected]> * chore: convert dotnet-sdk-dev to dang Signed-off-by: Tom Chauveau <[email protected]> * feat: add rust-sdk-dev toolchain Signed-off-by: Tom Chauveau <[email protected]> * adding java-sdk-dev toolchain Signed-off-by: Yves Brissaud <[email protected]> * WIP: appease go linter Signed-off-by: Solomon Hykes <[email protected]> * go mod tidy Signed-off-by: Solomon Hykes <[email protected]> * fix docs toolchain Signed-off-by: Solomon Hykes <[email protected]> * modules/go: customize display of linting "sub-checks" Signed-off-by: Solomon Hykes <[email protected]> * fix dependency issue in monolith Signed-off-by: Solomon Hykes <[email protected]> * fix linting across toolchains Signed-off-by: kpenfound <[email protected]> * new toolchain: release Signed-off-by: Solomon Hykes <[email protected]> * Change Github Actions to use 'dagger checks' instead of 'dagger call' Signed-off-by: Solomon Hykes <[email protected]> Co-authored-by: Kyle Penfound <[email protected]> * Harmonize version of dang SDK NOTE: this version does not work with dagger v0.19.6 and below. Signed-off-by: Solomon Hykes <[email protected]> * Annotate missing checks Signed-off-by: Solomon Hykes <[email protected]> * remove dead dependencies Signed-off-by: Solomon Hykes <[email protected]> * wip elixir dev module Signed-off-by: kpenfound <[email protected]> * toolchain: typescript-sdk: uncomment docs lint check Signed-off-by: Solomon Hykes <[email protected]> * Fix typescript-sdk toolchain Signed-off-by: Solomon Hykes <[email protected]> * CI: disable test-loading of removed modules Signed-off-by: Solomon Hykes <[email protected]> * improve Python SDK toolchain Signed-off-by: Solomon Hykes <[email protected]> * Polish the Go SDK toolchain Signed-off-by: Solomon Hykes <[email protected]> * chore: fix php sdk dev Signed-off-by: Tom Chauveau <[email protected]> * chore: add missing SDK to all-sdks module list Signed-off-by: Tom Chauveau <[email protected]> * chore: fix the rust SDK dev Signed-off-by: Tom Chauveau <[email protected]> * elixir-dev: use File.withReplaced for publish and syncImage Signed-off-by: kpenfound <[email protected]> * chore: push fix attempt on php sdk (not working yet) Signed-off-by: Tom Chauveau <[email protected]> * chore: cleanup php sdk dev Signed-off-by: Tom Chauveau <[email protected]> * wip: attach dev engine to typescript SDK tests Signed-off-by: Solomon Hykes <[email protected]> * monolith: comment code Signed-off-by: Solomon Hykes <[email protected]> * typescript SDK toolchain: fix bun tests Signed-off-by: Solomon Hykes <[email protected]> * typescript-sdk toolchain: expose bunjs-dev-container Signed-off-by: Solomon Hykes <[email protected]> * gha: remove concurrency group in checks Signed-off-by: Solomon Hykes <[email protected]> * python-sdk toolchain: expose python dev container for debugging Signed-off-by: Solomon Hykes <[email protected]> * python-sdk toolchain: remove typecheck() from exposed checks Signed-off-by: Solomon Hykes <[email protected]> * go mod tidy Signed-off-by: Solomon Hykes <[email protected]> * ci: run checks on latest main commit Signed-off-by: Solomon Hykes <[email protected]> * fix toolchain description display Signed-off-by: Yves Brissaud <[email protected]> Co-authored-by: Solomon Hykes <[email protected]> * fix: lint issues Signed-off-by: Yves Brissaud <[email protected]> * fix(modules/go): optional include/exclude for `modules` list Signed-off-by: Yves Brissaud <[email protected]> * fix: left over from previous lint commit Signed-off-by: Yves Brissaud <[email protected]> * go mod tidy without integration ignored Signed-off-by: kpenfound <[email protected]> * only ignore core/integration/testdata for go toolchain Signed-off-by: kpenfound <[email protected]> * ignore only testdata modules Signed-off-by: kpenfound <[email protected]> * helm-dev toolchain: vendor k3s dependency Signed-off-by: Solomon Hykes <[email protected]> * python-sdk-dev toolchain: vendor dockerd dependency Signed-off-by: Solomon Hykes <[email protected]> * fix testdata linting Signed-off-by: kpenfound <[email protected]> * the key to the universe Signed-off-by: kpenfound <[email protected]> * unvendor dang and fix linting Signed-off-by: kpenfound <[email protected]> * elixir-sdk: implement bump() Signed-off-by: Solomon Hykes <[email protected]> * typescript sdk: implement bump() Signed-off-by: Solomon Hykes <[email protected]> * dotnet SDK: add (no-op) bump function Signed-off-by: Solomon Hykes <[email protected]> * rust sdk: fix bump() Signed-off-by: Solomon Hykes <[email protected]> * ci: run linters in bootstrap, instead of SDK tests This avoids triggering an unresolved issue with 3 layers of nested dagger engines (dagger-in-dagger-in-dagger). Signed-off-by: Solomon Hykes <[email protected]> * sdk/java: add fmt command Signed-off-by: Yves Brissaud <[email protected]> * convert toolchains/security to dang Signed-off-by: Yves Brissaud <[email protected]> * convert toolchains/changelog to dang Signed-off-by: Yves Brissaud <[email protected]> * python-sdk toolchain: remove over-complicated "dockerfile extractor", just hardcode uv image Signed-off-by: Solomon Hykes <[email protected]> * go-sdk: expand ignore filter to include new codegen dependencies Signed-off-by: Solomon Hykes <[email protected]> * Caught stealthy typo which caused ignore filters to be... ignored Signed-off-by: Solomon Hykes <[email protected]> * CI: .env.gha: env-specific configuration for our Github Actions CI environment Signed-off-by: Solomon Hykes <[email protected]> * engine-dev toolchain: relax source filter to un-break the build Signed-off-by: Solomon Hykes <[email protected]> * CI: update "outer engine" pinned commit Signed-off-by: Solomon Hykes <[email protected]> * CI: hardcode absolute path of docker config Signed-off-by: Solomon Hykes <[email protected]> * typescript sdk: remove duplicate code, fix weird dang error, simplify Signed-off-by: Solomon Hykes <[email protected]> * unbreak rebase Signed-off-by: Solomon Hykes <[email protected]> * go toolchain: fancier output + limited parallelism of 'check-tidy' function Signed-off-by: Solomon Hykes <[email protected]> * CI: bump outer engine version Signed-off-by: Solomon Hykes <[email protected]> * fix wrong ignore filter, which caused seemingly unrelated shell auto-complete error Signed-off-by: Solomon Hykes <[email protected]> * tentative fix for php-sdk:generate error caused by missing secret in engine-dev installclient Signed-off-by: Solomon Hykes <[email protected]> --------- Signed-off-by: Solomon Hykes <[email protected]> Signed-off-by: Tom Chauveau <[email protected]> Signed-off-by: Yves Brissaud <[email protected]> Signed-off-by: kpenfound <[email protected]> Signed-off-by: Yves Brissaud <[email protected]> Co-authored-by: Tom Chauveau <[email protected]> Co-authored-by: Yves Brissaud <[email protected]> Co-authored-by: kpenfound <[email protected]> Co-authored-by: Yves Brissaud <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The time has finally come to break up our CI monolith into cleanly separated toolchains. This will make our CI simpler, smaller, and hopefully faster! It will also finally allow us to show our own CI as a "golden example" of how to use Dagger. It has been a long road getting to this moment... 😭
Goals:
TODO
LATER
dagger call engineinstead ofdagger call engine-dev)docs/recorderto a toolchain (wip @eunomie)dangfor load speed.gitignorefrom our modules; add ageneratefunction; stop generating on-the-fly on go lint (faster!)golangci-lint, we don't need a dumb meta-linter, we have dagger to glue stuff together already. UsestaticcheckDONE
bumpinelixir-sdkandtypescript-sdktypescript-sdk:typecheckdagger functionsanddagger toolchain list) (done @eunomie)typescript-sdk:testelixir-sdk-devand absorb native toolchain (wip @kpenfound)php-sdk-dev:generate(done @TomChv)all-sdktoolchain: actually include all SDKs (done @TomChv).github/workflows/publish.ymldagger checksdagger checksSwitch checks to@checkpragma, improve UI #11374dagger call php-sdk generate(wip @shykes)docs-dev(move it toengine-dev, for correct source access)go lintandgo check-tidytoolchains list, too verboseengine-devcli-devdocs-devcigo-sdk-devpython-sdk-devand absorb native toolchaintypescript-sdk-devand absorb native toolchainphp-sdk-devand absorb native toolchainrust-sdk-devand absorb native toolchainjava-sdk-devand absorb native toolchaindotnet-sdk-devand absorb native toolchainhelm-devscriptstoinstallers.changesto a toolchain (changelog)releaserto a toolchain (release)scan.goto a toolchain (security)