release-finish NullPointerException

999 views
Skip to first unread message

Mike Rudat

unread,
May 4, 2015, 10:33:15 AM5/4/15
to maven-jgit...@googlegroups.com
I am getting a NullPointerException when executing the release-finish goal in a bamboo task.  The Goal in the task is "jgitflow:release-finish -DstartCommit=${bamboo.repository.revision.number} -DskipTests=true -X -B".

The exception from the build log:

build	03-May-2015 15:53:06	[ERROR] Failed to execute goal external.atlassian.jgitflow:jgitflow-maven-plugin:1.0-m4.3:release-finish (default-cli) on project umod: Execution default-cli of goal external.atlassian.jgitflow:jgitflow-maven-plugin:1.0-m4.3:release-finish failed. NullPointerException -> [Help 1]
build	03-May-2015 15:53:06	org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal external.atlassian.jgitflow:jgitflow-maven-plugin:1.0-m4.3:release-finish (default-cli) on project umod: Execution default-cli of goal external.atlassian.jgitflow:jgitflow-maven-plugin:1.0-m4.3:release-finish failed.
build	03-May-2015 15:53:06		at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:224)
build	03-May-2015 15:53:06		at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
build	03-May-2015 15:53:06		at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
build	03-May-2015 15:53:06		at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
build	03-May-2015 15:53:06		at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
build	03-May-2015 15:53:06		at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
build	03-May-2015 15:53:06		at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:120)
build	03-May-2015 15:53:06		at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:355)
build	03-May-2015 15:53:06		at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:155)
build	03-May-2015 15:53:06		at org.apache.maven.cli.MavenCli.execute(MavenCli.java:584)
build	03-May-2015 15:53:06		at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:216)
build	03-May-2015 15:53:06		at org.apache.maven.cli.MavenCli.main(MavenCli.java:160)
build	03-May-2015 15:53:06		at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
build	03-May-2015 15:53:06		at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
build	03-May-2015 15:53:06		at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
build	03-May-2015 15:53:06		at java.lang.reflect.Method.invoke(Method.java:483)
build	03-May-2015 15:53:06		at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
build	03-May-2015 15:53:06		at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
build	03-May-2015 15:53:06		at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
build	03-May-2015 15:53:06		at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
build	03-May-2015 15:53:06	Caused by: org.apache.maven.plugin.PluginExecutionException: Execution default-cli of goal external.atlassian.jgitflow:jgitflow-maven-plugin:1.0-m4.3:release-finish failed.
build	03-May-2015 15:53:06		at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:143)
build	03-May-2015 15:53:06		at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
build	03-May-2015 15:53:06		... 19 more
build	03-May-2015 15:53:06	Caused by: java.lang.NullPointerException
build	03-May-2015 15:53:06		at org.eclipse.jgit.merge.RecursiveMerger.getBaseCommit(RecursiveMerger.java:196)
build	03-May-2015 15:53:06		at org.eclipse.jgit.merge.RecursiveMerger.getBaseCommit(RecursiveMerger.java:126)
build	03-May-2015 15:53:06		at org.eclipse.jgit.merge.ThreeWayMerger.mergeBase(ThreeWayMerger.java:132)
build	03-May-2015 15:53:06		at org.eclipse.jgit.merge.ResolveMerger.mergeImpl(ResolveMerger.java:224)
build	03-May-2015 15:53:06		at org.eclipse.jgit.merge.Merger.merge(Merger.java:176)
build	03-May-2015 15:53:06		at org.eclipse.jgit.merge.ThreeWayMerger.merge(ThreeWayMerger.java:114)
build	03-May-2015 15:53:06		at org.eclipse.jgit.api.MergeCommand.call(MergeCommand.java:337)
build	03-May-2015 15:53:06		at com.atlassian.jgitflow.core.command.AbstractBranchMergingCommand.doMerge(AbstractBranchMergingCommand.java:75)
build	03-May-2015 15:53:06		at com.atlassian.jgitflow.core.command.AbstractBranchMergingCommand.doMerge(AbstractBranchMergingCommand.java:43)
build	03-May-2015 15:53:06		at com.atlassian.jgitflow.core.command.ReleaseFinishCommand.call(ReleaseFinishCommand.java:127)
build	03-May-2015 15:53:06		at com.atlassian.maven.plugins.jgitflow.manager.DefaultFlowReleaseManager.finish(DefaultFlowReleaseManager.java:89)
build	03-May-2015 15:53:06		at com.atlassian.maven.plugins.jgitflow.mojo.ReleaseFinishMojo.execute(ReleaseFinishMojo.java:107)
build	03-May-2015 15:53:06		at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:132)
build	03-May-2015 15:53:06		... 20 more
build	03-May-2015 15:53:06	[ERROR] 
build	03-May-2015 15:53:06	[ERROR] 
build	03-May-2015 15:53:06	[ERROR] For more information about the errors and possible solutions, please read the following articles:
build	03-May-2015 15:53:06	[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginExecutionException
simple	03-May-2015 15:53:06	Failing task since return code of [/opt/maven-3.2/bin/mvn -Djava.io.tmpdir=/tmp/DEMF-DR6-JRS jgitflow:release-finish -DskipTests=true -X -B] was 1 while expected 0

The jgitflow log:

DefaultJGitFlowSetupHelper: _     Maven Version: 3.2.5 _
DefaultJGitFlowSetupHelper: _ 
 _
DefaultJGitFlowSetupHelper: _     Maven JGitFlow Plugin Version: 1.0-m4.3 _
DefaultJGitFlowSetupHelper: _ 
 _
DefaultJGitFlowSetupHelper: _     args:  _
DefaultJGitFlowSetupHelper: _     base dir: /home/bamboo/bamboo-agent-home/xml-data/build-dir/DEMF-DR6-JRS _
DefaultJGitFlowSetupHelper: _     default development version: null _
DefaultJGitFlowSetupHelper: _     default feature name: null _
DefaultJGitFlowSetupHelper: _     default release version: null _
DefaultJGitFlowSetupHelper: _     release branch version suffix:  _
DefaultJGitFlowSetupHelper: _     tag message: tagging release ${version} _
DefaultJGitFlowSetupHelper: _     allow snapshots: false _
DefaultJGitFlowSetupHelper: _     auto version submodules: false _
DefaultJGitFlowSetupHelper: _     enable feature versions: false _
DefaultJGitFlowSetupHelper: _     enable ssh agent: false _
DefaultJGitFlowSetupHelper: _     feature rebase: false _
DefaultJGitFlowSetupHelper: _     interactive: false _
DefaultJGitFlowSetupHelper: _     keep branch: false _
DefaultJGitFlowSetupHelper: _     no build: false _
DefaultJGitFlowSetupHelper: _     no deploy: true _
DefaultJGitFlowSetupHelper: _     no tag: false _
DefaultJGitFlowSetupHelper: _     pushFeatures: false _
DefaultJGitFlowSetupHelper: _     pushReleases: true _
DefaultJGitFlowSetupHelper: _     pushHotfixes: false _
DefaultJGitFlowSetupHelper: _     squash: false _
DefaultJGitFlowSetupHelper: _     update dependencies: true _
DefaultJGitFlowSetupHelper: _     use release profile: true _
DefaultJGitFlowSetupHelper: _ 

--------------------------------------------------------------------------------

 _
GitHelper: _method start:_ listBranchesWithPrefix
GitHelper:     _ simple name [develop] startsWith prefix [release/] ? false _
GitHelper:     _ simple name [master] startsWith prefix [release/] ? false _
GitHelper:     _ simple name [release/6.0.23] startsWith prefix [release/] ? true _
GitHelper:     _ simple name [develop] startsWith prefix [release/] ? false _
GitHelper:     _ simple name [master] startsWith prefix [release/] ? false _
GitHelper:     _ simple name [release/6.0.23] startsWith prefix [release/] ? true _
: _method END:_ 
release-finish: ## Command call(): 
GitHelper:     _method start:_ workingTreeIsClean
GitHelper:         _ working tree is clean _
:     _method END:_ 
GitHelper:     _method start:_ remoteBranchExists
GitHelper:         _ checking for branch: release/6.0.23 _
GitHelper:         _ got 3 remote refs _
GitHelper:         _ ref name: refs/remotes/origin/develop _
GitHelper:         _ ref simple name: develop _
GitHelper:         _ simple name equals branch? false _
GitHelper:         _ ref name: refs/remotes/origin/master _
GitHelper:         _ ref simple name: master _
GitHelper:         _ simple name equals branch? false _
GitHelper:         _ ref name: refs/remotes/origin/release/6.0.23 _
GitHelper:         _ ref simple name: release/6.0.23 _
GitHelper:         _ simple name equals branch? true _
:     _method END:_ 
release-finish:     _method start:_ requireLocalBranchNotBehindRemote
:     _method END:_ 
GitHelper:     _method start:_ remoteBranchExists
GitHelper:         _ checking for branch: master _
GitHelper:         _ got 3 remote refs _
GitHelper:         _ ref name: refs/remotes/origin/develop _
GitHelper:         _ ref simple name: develop _
GitHelper:         _ simple name equals branch? false _
GitHelper:         _ ref name: refs/remotes/origin/master _
GitHelper:         _ ref simple name: master _
GitHelper:         _ simple name equals branch? true _
:     _method END:_ 
release-finish:     _method start:_ requireLocalBranchNotBehindRemote
:     _method END:_ 
GitHelper:     _method start:_ remoteBranchExists
GitHelper:         _ checking for branch: develop _
GitHelper:         _ got 3 remote refs _
GitHelper:         _ ref name: refs/remotes/origin/develop _
GitHelper:         _ ref simple name: develop _
GitHelper:         _ simple name equals branch? true _
:     _method END:_ 
release-finish:     _method start:_ requireLocalBranchNotBehindRemote
:     _method END:_ 
release-finish:     merging 'release/6.0.23' into 'master'...

pom.xml jgitflow configuration:

            <plugin>
                <groupId>external.atlassian.jgitflow</groupId>
                <artifactId>jgitflow-maven-plugin</artifactId>
                <version>1.0-m4.3</version>
                <configuration>
                    <localOnly>true</localOnly>
                    <!-- Enable this to push to releases to origin -->
                    <pushReleases>true</pushReleases>
                    <!-- Enable this to push to hotfixes to origin -->
                    <pushHotfixes>true</pushHotfixes>
                    <!-- Enable this to push to origin using SSH keys -->
                    <enableSshAgent>true</enableSshAgent>
                    <defaultOriginUrl>g...@bitbucket.org:mrudatsprint/jgit-flow.git</defaultOriginUrl>
                    <noDeploy>true</noDeploy>
                    <flowInitContext>
                        <masterBranchName>master</masterBranchName>
                        <developBranchName>develop</developBranchName>
                        <featureBranchPrefix>feature/</featureBranchPrefix>
                        <releaseBranchPrefix>release/</releaseBranchPrefix>
                        <hotfixBranchPrefix>hotfix/</hotfixBranchPrefix>
                        <versionTagPrefix />
                    </flowInitContext>
                </configuration>
            </plugin>

Thank you for the help,

Mike

Mike Rudat

unread,
Jun 10, 2015, 11:28:54 AM6/10/15
to maven-jgit...@googlegroups.com
The latest version (1.0-m5.1) of jgitflow resolves the issue.

Thanks
                    <defaultOriginUrl>git@bitbucket.org:mrudatsprint/jgit-flow.git</defaultOriginUrl>
                    <noDeploy>true</noDeploy>
                    <flowInitContext>
                        <masterBranchName>master</masterBranchName>
                        <developBranchName>develop</developBranchName>
                        <featureBranchPrefix>feature/</featureBranchPrefix>
                        <releaseBranchPrefix>release/</releaseBranchPrefix>
                        <hotfixBranchPrefix>hotfix/</hotfixBranchPrefix>
                        <versionTagPrefix />
                    </flowInitContext>
                </configuration>
            </plugin>
Reply all
Reply to author
Forward
0 new messages