Automatize the process of bumping the released version of superbuild subprojects #596
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR changes the workflow to update the releases of the subprojects. Until this PR, maintainers had to manually bump the version of the subprojects that got a new release in the currently tested
<yyyy.mm.yaml>
file. This procedure was typically error prone, as it is was common to forget to do this manual bump.For this reason, the procedure as been changed as in the following:
releases/latest.releases.yaml
file that is meant to contain the latest release of each subproject of the superbuild.update-latest-releases.yml
GitHub action, that periodically checks the default branches of the repo (the one used ifROBOTOLOGY_PROJECT_TAGS
is set toStable
) and extract the latest tag done on that branch. The action can also be run manually using theworkflow_dispatch
event. The action automatically creates a Pull Request, so that the compilation of the new proposed tags is tested before they are merged. An example of such automatically generated pull request is Automatic update of latest releases versions traversaro/robotology-superbuild#5 .releases/latest.releases.yaml
file,you can disable the automatical update of the tags by adding its CMake name in the
projects_to_skip
array in thescripts/robotologyUpdateLatestReleases.sh
script.releases/latest.releases.yaml
file is copied to areleases/<yyyy.mm>.yaml
file, and then the release workflow continues as usual.The main good news for project and components mantainers is that you do not need anymore to bump the version in the yaml file, but this will be handled automatically by the
update-latest-releases.yml
GitHub Action. The only thing that you need to do is to to a tag on your stable branch.@prashanthr05 @gabrielenava @S-Dafarra @lrapetti @Yeshasvitvs @arrenglover @GiulioRomualdi @kouroshD