The project I'm working on has a core repo with 10+ submodules. Each project has its own .gitlab-ci.yml. The submodules' pipelines build, test, and deploy packaes and the core one pulls them together in a few container images. I'm starting to remember all of the ways that Gitlab CI's rules & inclusion systems become too complicated, which is inspiring me to spike out Dagger (which I've only used for demo projects).
Would it be better to start from the submodules and work my way up? Or from the core project and go down?
Should I pull everything into one pipeline or continue to have separate projects be responsible for their own sub-pipelines? (I lean toward the former, but I'm not sure.)
Any other considerations for setting up Gitlab CI runners to work well with Dagger (beyond what's currently posted in the docs)? (Caching, etc.)