-
Notifications
You must be signed in to change notification settings - Fork 38
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
Adds semantic versioning and release publishing #39
Adds semantic versioning and release publishing #39
Conversation
MLCommons CLA bot All contributors have signed the MLCommons CLA ✍️ ✅ |
Short Summary: This PR has been thoroughly tested by Dan and @AlexandruAntonescuKeysight. It automatically increases the minor version of semantic versioning when there is a minor change in the protobuf definition. The major version should be updated manually. cc: @srinivas212 |
69c62ee
to
40a32dd
Compare
.gitignore
Outdated
@@ -7,3 +7,4 @@ __pycache__/ | |||
*.et | |||
*.dot | |||
.pyre | |||
.vscode/ |
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.
nit seems a bit user editor specific
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.
I've removed it
Looks good (y) |
Major version is only incremented manually. version.py does not increment it. |
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.
lgtm. Thank you for your contributions @AlexandruAntonescuKeysight!
Summary
This PR is intended to enhance the CI pipeline and simplify the modules calling. It has the following additions:
A new workflow file was created for versioning task and it contains the following:
a few files have been added: VERSION, version.py, proto.lock
protolock init
(only once, after that when there are modification it is ranprotolock commit
); this tool is used for checking protobuff backward compatibilityprotolock status
and if so, the minor version is incremented, otherwise the patch number is incremented. Also, it manages the incrementing step of the version and also updates the VERSION file with the new versionthe pyproject.toml was also updated to dynamically read the version from the VERSION file when building or installing
also after the version is updated, a commit is made for submitting the new VERSION and proto.lock files to the repo
the previous commit is done by an action and the commiter is
actions-user
. Because of this,actions-user
was added to the allow list in the CLA-bot workflowTest Plan
I've tested this by locally running version.py script after randomly making changes to the proto (to check if protolock is working fine).
Also, I've made test branches on my fork and on Dan's to see if the workflows are working good on github runners.