-
Notifications
You must be signed in to change notification settings - Fork 15
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
Add task to generate release body #233
Conversation
tasks/git.py
Outdated
""" | ||
docker_cmd = [ | ||
"docker run -t -v", | ||
"{}/..:/app/".format(PROJ_ROOT), |
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.
Note: this only works if faabric is used as a submodule in faasm. This is because, as a submodule, the .git
folder is a softlink to ../.git/modules/faabric
.
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.
We shouldn't assume this, Faabric should be treated as a separate library and worked on in a separate checkout. Editing Faabric as a submodule of Faasm should be the exception not the rule.
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.
Nice one, this looks good. I think we can go one step further and actually do the release from the command. See the equivalent command in Faasm: https://github.com/faasm/faasm/blob/main/faasmcli/faasmcli/tasks/release.py#L152
Splitting it into creating and then publishing the release is probably good for now, but can eventually be merged into one step.
tasks/git.py
Outdated
""" | ||
docker_cmd = [ | ||
"docker run -t -v", | ||
"{}/..:/app/".format(PROJ_ROOT), |
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.
We shouldn't assume this, Faabric should be treated as a separate library and worked on in a separate checkout. Editing Faabric as a submodule of Faasm should be the exception not the rule.
@csegarragonz let's also remove the commit bodies and just include the headline commits. There are links to the PRs that people can click on if they want more detail. |
@csegarragonz finally, do we need to add |
@Shillaker we don't need to add i add the new release body format in the updated pr description, i agree with you and think it is more concise and readable. |
Ah whoops, sorry I'd assumed |
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.
This looks great. Only possible issue is with the docs, I think those inv
commands won't work but may be wrong.
First, generate a draft release: | ||
|
||
```bash | ||
inv git.release_create |
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 don't think this will work, I have a feeling Invoke will replace all underscores with hyphens.
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.
It works for me locally (source ./bin/workon.sh && inv -l
I see underscores). The same does not happen in faasm.
We use different invoke versions (1.6.0 and 1.5.0 respectively) but I can't see anything about such changes in their changelog.
In this PR I introduce a task to generate the body for a new release.
We use the git-cliff project through their docker image to generate a changelog between the current tag and the latest release's tag.
I have customised the format of the release body a bit to fit our Github usage (i.e. squash commits). This is orthogonal to any automation efforts we want to do in the future.
I paste what the release body would look like now for discussion (note that we are missing this actual PR, hence why we see three dangling commits at the beginning).
=====
Faabric's Changelog
Here is what has changed since last release:
[0.3.1] - 2022-02-23
[0.3.0] - 2022-02-11
util::generateGid()
for MPI messages #203)[0.2.3] - 2021-12-20
MPI_Reduce
#195)GET
from Redis for messages in the Execution Graph (RetryGET
from Redis for messages in the Execution Graph #181)NEVER_ALONE
for chained MPI calls (UseNEVER_ALONE
for chained MPI calls #184)ExecGraph
hosts (GetExecGraph
hosts #178)[0.2.1] - 2021-10-27
MPI_BASE_PORT
and turn into env. variable #150)snapshotExists
function to registry (AddsnapshotExists
function to registry #136)appid
on messages (Setappid
on messages #137)