hi OpenSavvy folks! I stumbled upon one of your pr...
# opensavvy
p
hi OpenSavvy folks! I stumbled upon one of your projects: https://gitlab.com/opensavvy/automation/gitlab-ci.kt, I think it's on hold. I'm wondering if it's in a usable state? Did you get enough traction? I don't use GitLab myself, but I own #C02UUATR7RC and one of the problems there is that you have to keep the YAML next to the Kotlin script that generates it. In GitLab CI it seems that it's possible to create a child pipeline dynamically (ref), which would increase the UX of such solution compared to the one for GitHub Actions. This single problem aside, I'm happy to collaborate, exchange ideas, share experience on my project (it's been 3 years already!) to help you develop your variant! šŸ’Æ
c
Hey! Yes, the project is currently on hold. When I started it, I was using very complex GitLab CI configuration, which I've since streamlined so much that I don't require going that much in-depth anymore. I do want to revisit and stabilize it someday, but I don't have much time at the moment. If you try the project though, the example in the README should work fine :) And yes, the goal from the beginning is to be compatible with child-pipelines! It's one of the main things I dislike with GitHub Actions, I really don't like having to commit build outputs…
šŸ‘ 1
One thing I'd like to explore is whether I can use GitLab's cache to remove the time it takes for the script to build. Otherwise, it adds some time to all jobs… Also, GitLab's UX with child pipelines is sadly not as good as with regular pipelines… For example, try to navigate this one, which uses many child pipelines: https://gitlab.com/opensavvy/automation/containers/-/pipelines/1560039348
šŸ‘ 1
p
I'm planning to visit the caching thing for github-workflows-kt one day, so perhaps we can exchange knowledge here
šŸ‘ 1
ā˜ļø but in practice it will work correctly only for single-file scripts, not for the ones that include other Kotlin code via
@file:Import
. It's because Kotlin's compiler won't detect stale cache if the imported file is modified, it's a known bug