diff --git a/Jenkinsfile b/Jenkinsfile index b0adeb7..0962908 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -68,6 +68,13 @@ } } +def gitMerge(fromBranch, toBranch, msg) { + sh(""" +git checkout ${toBranch} +git merge ${toBranch} -m '${msg}' + """) +} + def gitPush(gitRemote = 'origin', gitCommit) { def dryRun = ( env.DRYRUN == 'true' ) ? '--dry-run' : '' sh("git push ${dryRun} ${gitRemote} ${gitCommit}") @@ -192,7 +199,7 @@ echo("Git logs since last tag:\n" + gitLog()) sh("git checkout -b release-${env.LAZY_INPUT}") gitUpdateChangelogs(currentVersion.code) - gitUpdateVersion(env.LAZY_INPUT, currentVersion.code) + gitUpdateVersion(env.LAZY_INPUT, currentVersion.code + 1) def nextVersion = [ name: getVersion('versionName') as String, code: getVersion('versionCode') as Integer ] echo("nextVersion = ${nextVersion.toString()}" ) gitPush(releaseFrom['remote'], "release-${env.LAZY_INPUT}") @@ -214,16 +221,12 @@ }, run: { withGitPassword('bot-ci-dgm', { - def dryRun = ( env.DRYRUN == 'true' ) ? '--dry-run' : '' - def currentVersion = [ name: getVersion('versionName') as String, code: getVersion('versionCode') as Integer ] - def nextVersion = [ name: currentVersion.name, code: currentVersion.code + 1] - echo("currentVersion = ${currentVersion.toString()} / nextVersion = ${nextVersion.toString()}") if ( env.DRYRUN != 'true' ) fastlane('android', 'alpha') - sh(""" -git checkout ${releaseFrom['remote']}/${releaseFrom['branch']} -git merge releaseFrom['remote']/${env.BRANCH_NAME} -m 'Merge changes from ${currentVersion['versionName']}-${currentVersion['versionCode']} back into ${releaseFrom['branch']}' - """) - gitUpdateVersion(nextVersion.name, nextVersion.code) + gitMerge( + "${releaseFrom['remote']}/${env.BRANCH_NAME}", + "${releaseFrom['remote']}/${releaseFrom['branch']}", + "Merge changes from ${currentVersion['versionName']}-${currentVersion['versionCode']} back into ${releaseFrom['branch']}" + ) gitPush(releaseFrom['remote'], releaseFrom['branch']) }) }, @@ -249,10 +252,11 @@ if ( env.DRYRUN != 'true' ) fastlane('android', 'production') withGitPassword('bot-ci-dgm', { def currentVersion = [ name: getVersion('versionName') as String, code: getVersion('versionCode') as Integer ] - sh(""" -git checkout ${releaseTo['remote']}/${releaseTo['branch']} -git merge releaseFrom['remote']/${env.BRANCH_NAME} -m 'Merge changes from ${currentVersion['versionName']}-${currentVersion['versionCode']} into ${releaseTo['branch']}' - """) + gitMerge( + "${releaseFrom['remote']}/${env.BRANCH_NAME}", + "${releaseTo['remote']}/${releaseTo['branch']}", + "Merge changes from ${currentVersion['versionName']}-${currentVersion['versionCode']} back into ${releaseTo['branch']}" + ) gitPush(releaseTo['remote'], releaseTo['branch']) gitTag("${currentVersion.name}", releaseTo['remote']) })