feat: changes git client to resolve semantic versioning tags
Hi all, I'm creating this PR to make Argo CD able to resolve Semantic Version for Git revisions as it already have for Helm! I did this is an initial PR for the issue #5609 and I've made this way 'cause I think it's simpler to make one change at time, in the reference issue the proposed solution is to support four types of strategy based on images updater but I guess the current Git support for versioning + semantic versioning should be enough for the majority of the cases while maintaining backward compatibility with the people who already uses Argo.
Checklist:
- [X] Either (a) I've created an enhancement proposal and discussed it with the community, (b) this is a bug fix, or (c) this does not need to be in the release notes.
- [X] The title of the PR states what changed and the related issues number (used for the release note).
- [X] The title of the PR conforms to the Toolchain Guide
- [ ] I've included "Closes [ISSUE #]" or "Fixes [ISSUE #]" in the description to automatically close the associated issue.
- [ ] I've updated both the CLI and UI to expose my feature, or I plan to submit a second PR with them.
- [X] Does this PR require documentation updates?
- [X] I've updated documentation as required by this PR.
- [X] I have signed off all my commits as required by DCO
- [X] I have written unit and/or e2e tests for my change. PRs without these are unlikely to be merged.
- [X] My build is green (troubleshooting builds).
- [ ] My new feature complies with the feature status guidelines.
- [X] I have added a brief description of why this PR is necessary and/or what this PR solves.
- [ ] Optional. My organization is added to USERS.md.
- [ ] Optional. For bug fixes, I've indicated what older releases this fix should be cherry-picked into (this may or may not happen depending on risk/complexity).
Refs #5609
Hi @alexmt and @jannfis, I saw you are the owners of this part, could you review this PR, if possible, please?
This could also interest @crenshaw-dev
@ishitasequeira do you know who can help here (or maybe you're one the persons who can)? 😃
I'm really missing this feature with Argo! @alexmt / @jannfis / @crenshaw-dev / @ishitasequeira would you guys mind taking a look at it? I'm tagging you because you were the ones @thepabloaguilar tagged!
@blakepettersson or @pasha-codefresh could you help here, please?
@thepabloaguilar @ishitasequeira hello, any update on this? Thank you
Hi @yo-ga, I'll implement the test @ishitasequeira mentioned ASAP
Codecov Report
Attention: Patch coverage is 82.14286% with 5 lines in your changes missing coverage. Please review.
Project coverage is 44.96%. Comparing base (
8a28279) to head (745046b). Report is 514 commits behind head on master.
| Files with missing lines | Patch % | Lines |
|---|---|---|
| util/git/client.go | 82.14% | 3 Missing and 2 partials :warning: |
Additional details and impacted files
@@ Coverage Diff @@
## master #17566 +/- ##
==========================================
+ Coverage 44.94% 44.96% +0.02%
==========================================
Files 354 354
Lines 47740 47768 +28
==========================================
+ Hits 21455 21478 +23
- Misses 23482 23485 +3
- Partials 2803 2805 +2
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
@ishitasequeira the e2e tests are written, could you review the PR again, please?
@alexmt, @jannfis and @crenshaw-dev could review this PR too, if possible, please?
Hey y'all, someone could review this PR, please?
cc @ishitasequeira @alexmt @jannfis @crenshaw-dev
Sorry for tagging you again, it's just because this will change a lot how people can manage their deployment. The issue is open since the beginning of 2021 and still has recent comments
No worries @ishitasequeira, thanks for your help here!
hi @thepabloaguilar from which version its available and how to use this?
Hi @nithin-john-porter, I'm not a part of the ArgoCD team but from what I saw it's already available for the v2.12.0 version which now has not been released as stable yet but it has some release candidates that you can try to use: https://github.com/argoproj/argo-cd/releases/tag/v2.12.0-rc3