-
Notifications
You must be signed in to change notification settings - Fork 122
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
Feature/introduce version package #2750
Feature/introduce version package #2750
Conversation
This pull request does not have a backport label. Could you fix it @pchila? 🙏
NOTE: |
🌐 Coverage report
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you include the removal of the github.com/Masterminds/semver
module and any associated changes in this PR? That way, before and after this PR, we only have one way to parse and work with versions in the EA codebase. Thanks!
* Parse version as semver * make versions comparable and sortable * use internal parsed semver package for upgrade integration tests (cherry picked from commit 14b7fbd)
This new package is being used in integration/E2E tests and we're backporting those to |
What does this PR do?
Introduce semver-compliant version package to be used for upgrade to specific snapshot build.
Why is it important?
We need a way to parse correctly versions like
x.y.z-SNAPSHOT+buildID
, since the code is small enough I chose to introduce our own version package so that we can tailor it to our release name conventions if we need to (snapshot, emergency releases etc.)We also removed a direct dependency on an external library by adding ~160 lines of code which is not too bad since it comes with the advantage of full control over the version parsing for elastic agent
Checklist
[ ] I have made corresponding changes to the documentation[ ] I have made corresponding change to the default configuration files[ ] I have added an entry in./changelog/fragments
using the changelog tool[ ] I have added an integration test or an E2E testAuthor's Checklist
How to test this PR locally
Related issues
Use cases
Screenshots
Logs
Questions to ask yourself