-
Couldn't load subscription status.
- Fork 285
feat(git-clone): add support for submodules #4974
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
base: main
Are you sure you want to change the base?
Conversation
✅ Deploy Preview for docs-kargo-io canceled.
|
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #4974 +/- ##
==========================================
- Coverage 55.44% 55.43% -0.02%
==========================================
Files 404 404
Lines 36426 36450 +24
==========================================
+ Hits 20198 20206 +8
- Misses 15265 15279 +14
- Partials 963 965 +2 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
I think additional changes would be required to ensure credentials are properly passed, especially when each Git repository requires a different set of credentials. Which is a hypothetical possibility. |
|
@hiddeco Currently, this PR is designed to only allow cloning submodules that share the same credentials as the main repository. I fully recognize and agree with the need to support multiple sets of credentials.
Please let me know if my thoughts and design approach are correct. Thanks! |
|
fwiw, I think doing this with the limitation of only using the same credentials as the main repository seems like it might be a reasonable first step. I say might because the devil's always in the details and I have not looked at this very closely.
Only a word of caution that messing with any of that shouldn't be undertaken lightly and I would prefer something like that be done by a maintainer. There are a lot of esoteric reasons that git auth in Kargo is implemented as it is. There are certain approaches that don't work within a container based on a distroless image, and admittedly, I have a pipe dream of one day not even including a shell in that image, and that further restricts which approaches are viable. I definitely do not want us to fall down this particular rabbit hole at this time. |
|
@krancour |
|
@krancour @kyounghunJang Hi! Thank you for working on this. Any chance this will make it into 1.7.6 or 1.8.0? |
internal/promotion/runner/builtin/schemas/git-clone-config.json
Outdated
Show resolved
Hide resolved
54bc08e to
399aeda
Compare
Signed-off-by: Kyounghoon Jang <matkimchi_@naver.com>
26abcb5 to
067e37b
Compare
Signed-off-by: Kyounghoon Jang <matkimchi_@naver.com>
Summary
Add submodule support to git-clone step
Related Issue
fixes #4755
Description
Currently, the git-clone step does not support submodules.
Users must manually checkout submodules in separate steps and parse
.gitmodules,which introduces unnecessary complexity.
This PR adds support for initializing submodules directly within git-clone.
Proposed Changes
recurseSubmodules(default: false)