Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
titleVariable release number
RC_VERSION=1.1112.21


Using the above variable, complete the below git commands for each module being released.   The modules to be released are shown in the VIVO modules release plan.   A new tab may need to be added for this release.   When the steps below are complete for a specific module, change the color to green, so that others know what's been done. 

NOTE: The value of RC_VERSION will vary for each release.

Code Block
git checkout <master<main -or- maintenance-branch>
git pull
git push origin <master<main -or- maintenance-branch>:rel-${RC_VERSION}-RC

...

No Format
ORG=vivo-project
REPO=VIVO
CURR=1.1112.1
NEXT=1.1112.2-SNAPSHOT

Github Release

...

Code Block
titleVIVO - release.properties
linenumberstrue
#release configuration
projectVersionPolicyId=default
project.rel.org.vivoweb\:vivo-installer-home=1.1112.1
project.dev.org.vivoweb\:vivo-home=1.1112.2-SNAPSHOT
project.dev.org.vivoweb\:vivo-webapp=1.1112.2-SNAPSHOT
pushChanges=false
project.rel.org.vivoweb\:vivo-project=1.1112.1
project.rel.org.vivoweb\:vivo-api=1.1112.1
project.dev.org.vivoweb\:vivo-installer=1.1112.2-SNAPSHOT
remoteTagging=true
scm.commentPrefix=[maven-release-plugin] 
project.dev.org.vivoweb\:vivo-installer-webapp=1.1112.2-SNAPSHOT
project.dev.org.vivoweb\:vivo-api=1.1112.2-SNAPSHOT
project.dev.org.vivoweb\:vivo-project=1.1112.2-SNAPSHOT
scm.url=scm\:git\:git@github.com\:vivo-project/VIVO.git
scm.tagNameFormat=@{project.artifactId}-@{project.version}
project.rel.org.vivoweb\:vivo-installer-webapp=1.1112.1
project.rel.org.vivoweb\:vivo-home=1.1112.1
scm.tag=vivo-1.1112.1
project.rel.org.vivoweb\:vivo-webapp=1.1112.1
project.dev.org.vivoweb\:vivo-installer-home=1.1112.2-SNAPSHOT
exec.snapshotReleasePluginAllowed=false
project.rel.org.vivoweb\:vivo-installer=1.1112.1


Code Block
titleVitro - release.properties
linenumberstrue
#release configuration
projectVersionPolicyId=default
project.rel.org.vivoweb\:vitro-installer-home=1.12.1
project.dev.org.vivoweb\:vitro-home=1.12.2-SNAPSHOT
project.dev.org.vivoweb\:vitro-webapp=1.12.2-SNAPSHOT
pushChanges=false
project.rel.org.vivoweb\:vitro-project=1.12.1
project.rel.org.vivoweb\:vitro-api=1.12.1
project.dev.org.vivoweb\:vitro-installer=1.12.2-SNAPSHOT
remoteTagging=true
scm.commentPrefix=[maven-release-plugin]
project.dev.org.vivoweb\:vitro-installer-webapp=1.12.2-SNAPSHOT
project.dev.org.vivoweb\:vitro-api=1.12.2-SNAPSHOT
project.rel.org.vivoweb\:vitro-dependencies=1.12.1
project.dev.org.vivoweb\:vitro-project=1.12.2-SNAPSHOT
scm.url=scm\:git\:git@github.com\:vivo-project/Vitro.git
scm.tagNameFormat=@{project.artifactId}-@{project.version}
project.rel.org.vivoweb\:vitro-installer-webapp=1.12.1
project.rel.org.vivoweb\:vitro-home=1.12.1
scm.tag=vitro-1.12.1
project.rel.org.vivoweb\:vitro-webapp=1.12.1
project.dev.org.vivoweb\:vitro-installer-home=1.12.2-SNAPSHOT
project.dev.org.vivoweb\:vitro-dependencies=1.12.2-SNAPSHOT
exec.snapshotReleasePluginAllowed=false
project.rel.org.vivoweb\:vitro-installer=1.12.1

...

Push Release Branch to develop and Maintenance

The release branch has changes made since code freeze. It also contains the update to the version numbers for future development.

...

Ensure that your commit history matches the release branch's commit history, except for the two additional commits. 

  1. Changing from SNAPSHOT version to release version. Something like [maven-release-plugin] prepare release $REPO-$CURR
  2. Changing from release version to next development version. Something like [maven-release-plugin] prepare for next development iteration

If this appears correct, you can push your release branch on to the maintenance branch.

...

Code Block
#For vivo and vitro the main branch is develop
#For vivo languages, vitro languages, jenatools, and orcid-api-client the main branch is master
#Needs to be completed for each project in release


git checkout mastermain
git pull
git checkout rel-${CURR}-RC
git rebase -i mastermain
git push origin mastermain

or

git checkout rel-${CURR}-RC
git checkout mastermain
git pull
git merge rel-${CURR}-RC
git push origin mastermain

Clean-up RC Tags

Code Block
git tag #view list of tags to verify it exists
git tag -d rel-${CURR}-RC-${RCNUM}
git push origin :refs/tags/rel-${CURR}-RC-${RCNUM}


#Examples

#For vivo, vitro, vivo languages, vitro languages
git tag #view list of tags to verify it exists
git tag -d rel-1.11.1-RC-1
git push origin :refs/tags/rel-1.11.1-RC-1

#For jenatools
git tag #view list of tags to verify it exists
git tag -d rel-1.2.0-RC-1
git push origin :refs/tags/rel-1.2.0-RC-1

#For orcid-api-client
git tag #view list of tags to verify
git tag -d rel-0.6.3-RC-1
git push origin :refs/tags/rel-0.6.3-RC-1

...