-
Notifications
You must be signed in to change notification settings - Fork 13.3k
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
Release process fix & major/minor/rev macro addition #8126
Conversation
tools/makecorever.py
Outdated
def git(*args): | ||
cmd = ["git", "-C", platform_path] | ||
cmd.extend(args) | ||
proc = subprocess.Popen(cmd, stdout=subprocess.PIPE, universal_newlines=True, stderr=subprocess.DEVNULL) | ||
return proc.stdout.readlines()[0].strip() | ||
|
||
git_desc = platform_version; |
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.
Following the above, should this have additional param to skip git-describe?
Meaning, this still could still work with a shallow copy or with some broken tagging (like github actions checkout does)
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.
Tagging works OK including when used by github-action. Releases are based on tagging.
I updated the script per your 3 reviews and added comments.
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.
broken == checkout doing git fetch origin +$commit-sha$:refs/tags/$tag-name$
, which is worked around with fetch-depth:0... which could be avoided
my only problem with that is that version string depends on too much stuff, where we already know it from the tag name anyway; and commit sha comes from rev-parse regardless, shallow copy or not.
makecorever.py
is now used as part of the release process script.MAJOR
/MINOR
/REVISION
are added incore_version.h
based onplatform.txt
'sversion
when building with Arduino-CLI, or git tag when releasing. PlatformIO will have to be updated too (this is not addressed here).This is WIP but is going to be merged anyway in order to try the release script executed remotely by CI.
A tag will be added (3.0.1) and removed right after that (this gymnastic happens quite often while releasing these days).
This will allow to check generated logs and archive to address #8049