Skip to content

How to release new version of SDK

Alex Bobrikovich edited this page Dec 8, 2018 · 14 revisions

Prerequisites

Release SDK

  • If milestone wasn't created before, create it:
    • Based on tasks which was done decide is this minor, major or patch release.
    • !!! Don't use nano section in version, because you will get unexpected result, example: 2.6.13.1 -> 2.6.1-3.1
    • Decide what is a new version (I will use $SDK_VERSION below) based on type of release update specific section of the $SDK_VERSION, Example: 1.2.0
  • Switch to develop branch on sdk-cordova project: git checkout develop
  • Make sure that current stage of build good
    • Check last CI build (it should be success)
    • Run make build to double-check
    • Start Genymotion emulator & run make test
      • Make sure that all tests passed
  • Start releasing: git flow release start $SDK_VERSION
    Switched to a new branch 'release/1.2.0'
    
    Summary of actions:
     - A new branch 'release/1.2.0' was created, based on 'develop'
     - You are now on branch 'release/1.2.0'
    
    Follow-up actions:
     - Bump the version number now!
     - Start committing last-minute fixes in preparing your release
     - When done, run:
    
         git flow release finish '1.2.0'
    
  • Update version in package.json
  • Update version of dependency in src/android/dialonce.gradle
  • Update version in plugin.xml for /@plugin xpath
  • Commit updated version
    • git add package.json src/android/dialonce.gradle plugin.xml
    • git commit -m "Bump version to $SDK_VERSION"
    [release/1.2.0 7bb6f5b] Bump version to 1.2.0
     1 file changed, 1 insertions(+), 1 deletions(-)
    
  • Run make build to rebuild SDK with new version
  • Finish releasing: git flow release finish '$SDK_VERSION'
  • Push all changes to remote:
    • git push origin master --tags
    • git push origin develop --tags
  • Wait for CI
  • Create release on github
    • Select tag $SDK_VERSION
    • And type name v$SDK_VERSION in field below
    • Write release manifest based on issues from milestone & or if this just update of dependencies not about current version of SDK
  • Update #releases in slack
  • Publish SDK to npmjs.org by
    • npm login (type your user, password and email)
    • npm publish .[1]
    + cordova-plugin-dialonce@$SDK_VERSION
    
  • Check that update available on https://www.npmjs.com/package/cordova-plugin-dialonce

Notes

[1] Be careful with npm publish . because npmjs.org may be unavailable sometimes and there is not possible to rollback release

Clone this wiki locally