The purpose of this page is describing module release practical procedures. Mainly these steps are based on general "Release Procedure" but contains some of refinements found in the process of recent release procedures.
...
What is the new development version for "Edge API - OAI-PMH"? (org.folio:edge-oai-pmh) 2.2.2-SNAPSHOT: : 2.3.0-SNAPSHOT
7) git push && git push --tags
(pushing local changes, release notes in this case, with tags to remote stash)
...
14) Annonce in Slack about a new release in the #release
thread (example of message):
`edge-oai-pmh 2.2.1`
has been released https://github.com/folio-org/edge-oai-pmh/releases/tag/v2.2.1
...
2) Create a reease branch from there, for example: MODINVSTOR-524/release-19.2.3
(<release_ticket>/<release_branch_name>.
3) Cherry pick into prevoiusly created release branch all needed commits from mainstream development branch, i.e. master
. Make any extra fixes, if any changes needed, and commit them into previously created release branch*.
git cherry-pick <commit_hash>
*Don't forget to back porting extra fixes into mainstream development branch, i.e. master
, if these changes valuable not only for particular bugfix release.
...
* Change permissions location for oai-pmh view (MODINVSTOR-524)
46) mvn versions:set -DnewVersion=19.2.3-SNAPSHOT
(here we set the version of bugfix release, it conists of preparing relese's number with added prefix: "-SNAPSHOT
");
46.1) commit version number changes made in the pom.xml
file:
git commit -a -m "Prepare for next development iteration"
57) mvn --batch-mode -DautoVersionSubmodules=true release:clean release:prepare
(runs maven release buld process. Here release number and rest of data set up automatically without any dialogs, based on version's set from previous step);
68) git push && git push --tags
(pushing local changes, release notes in this case, with tags to remote stash. These changes are pushed to remote "long-live" branch b19.2
)
79) Go to the module's repository on GitHub and create a new "Pull request
" of pushed relaese branch (MODINVSTOR-524/release-19.2.3
) into the "long-live release branch - b19.2
in or case,
Wait until Pull request will be merged into "long-live" branch.
810) Create a new release's description in module repository on GitHub. For example, for mentioned MOD-INVENTORY-STORAGE module there is Release v19.2.3
created. To do so:
810.1) go to module's Code
page and pickup Releases
tab;
810.2) click on the "Draft a new release
" button and fill fields with data:
...
https://issues.folio.org/browse/MODINVSTOR-524
810.3) press "Publish release
" green button.
911) Run release job:
911.1) log in to Jenkins, choose appropriate tag on the "Tags
" tab (was created by push operation of the step 6th8th)
911.2) trigger Build Now
.
Please don't forget to build release's envitronment !!!
1012) Mark release ticket in Jira as "AWAITING BUGFIX DEPLOYMENT
" (depends omn the current workflow process in jira) and close it.
1113) Make release in Jira and add next versions*.
*Might have extra permissions to perform this step.
1214) Annonce in Slack about a new release in the #release
thread (example of message):
`mod-inventory-storage 19.2.3`
has been released https://github.com/folio-org/mod-inventory-storage/releases/tag/v19.2.3