3 ms·
Yeah I think this is totally true. The trouble is there are loads of build systems and loads of platforms that want to provide CI with different features and ca
by IshKebab 1y ago
Yeah I think this is totally true. The trouble is there are loads of build systems and loads of platforms that want to provide CI with different features and capabilities. It's difficult to connect them.
One workaround that I have briefly played with but haven't tried in anger: Gitlab lets you dynamically create its `.gitlab-ci.yaml` file: https://docs.gitlab.com/ci/pipelines/downstream_pipelines/#dynamic-child-pipelines https://docs.gitlab.com/ci/pipelines/downstream_pipelines/#d...
So you can have your build system construct its DAG and then convert that into a `.gitlab-ci.yaml` to run the actual commands (which may be on different platforms, machines, etc.). Haven't tried it though.
- Thom2000 1y agoI've used dynamic pipelines. They work quite well, with two caveats: now your build process is two step and slower. And there are implementation bugs on Gitlab's side: https://gitlab.com/groups/gitlab-org/-/epics/8205 https://gitlab.com/groups/gitlab-org/-/epics/8205 FWIW Github also allows creating CI definitions dynamically.
- dakiol 1y agoIf there’s something worse than a gitlab-ci.yaml file that is a dynamically-generated gitlab-ci.yaml file.