Document toolboxDocument toolbox

Working With the PomVersioner

If you're working on a mac...

Some of the deploy scripts (pomVersioner.py) use sed commands that don't work with the version of sed distributed with OSx. To fix this, you can install gnu-sed using homebrew. Instructions here.

Initial State

Assume that the currently deployed stack has, for PLFM, version 1.1.X and, for SWC, version 1.2.Y (i.e. these are the versions in the POM files of each project).  Assume that we are currently running on EBS stack 'prodB' and will start up 'prodC' (as we continue to cycle through the three stacks A->B->C->...).

 

Create a new release branch off of origin - develop.  This will be used to put code changes from last week's Standard Release Cycle into staging.

Clone Sage-Bionetworks Synapse-Repository-Services repository:   git clone https://github.com/Sage-Bionetworks/Synapse-Repository-Services.git

In the repository-services project:

git checkout master

git checkout \-b release-1.1 origin/release-1.1

git checkout master

edit pomVersioner.py

    set old version to <version from root pom.xml>

    set new version to 1.1.X

run pomVersioner.py

git commit -am "changed pom to match release branch"

git merge release-1.1

git  tag 1.1.X (<- whatever's in the POM)

git checkout release-1.1

edit pomVersioner.py

    set old version to 1.1.X

    set new version to develop-SNAPSHOT

run pomVersioner.py

git commit \-am "updated pom's to match develop-SNAPSHOT"

git checkout develop

git merge release-1.1  

git checkout -b release-1.2

 

Now, check that version in POM is develop-SNAPSHOT

 

edit pomVersioner.py

    set old version to develop-SNAPSHOT

    set new version to 1.2.0

run pomVersioner.py

git commit \-am "updated pom's"

git push origin master --tags

git push origin develop

git push origin release-1.2 --tags


Note: By default, git push does not transfer tags