0
votes

So, I cannot understand what's going on. I have a project of this structure:

Aggregator Pom
|
+- Parent Pom
|
+- SubModule 1 (whose parent is "Parent Pom")
|
+- SubModule 2 (whose parent is "SubModule 1")

All are of pom packaging.

I've been fighting the release plugin for days now. I run a release, and it successfully deploys to maven central. However, the versions of Parent Pom, SubModule 1 and SubModule 2 are of the next snapshot version.

It is being executed by TeamCity, but basically it runs something like:

mvn -P sign-artifacts -B release:clean release:prepare --batch-mode -Dtag=0.1.0 -DreleaseVersion=0.1.0 -DdevelopmentVersion=0.2.0-SNAPSHOT -Dscm.tag=0.1.0 -Dproject.rel.{aggregator pom groupId}:{aggregator pom artifactId}=0.1.0 -Dproject.dev.{aggregator pom groupId}:{aggregator pom artifactId}=0.2.0-SNAPSHOT

And then:

mvn -P sign-artifacts -B release:perform -P sign-artifacts

(the "sign-artifacts" profile is responsible for the GPG signing)

In maven central, I see that Parent Pom, SubModule 1 and SubModule 2 are there, their metadata says their version is 0.1.0, but when I download the pom of each, I see the version is 0.2.0-SNAPSHOT.

Any ideas what's wrong, and how to fix?

Thanks in advance,

Ohad

EDIT: some outputs:

[INFO] Checking out the project to perform the release ...
[INFO] Executing: /bin/sh -c cd /home/builduser/agent03/work/4ae459b9554b762f/target && git clone --branch 0.25.0 [email protected]:wix/wix-oss-parents.git /home/builduser/agent03/work/4ae459b9554b762f/target/checkout
[INFO] Working directory: /home/builduser/agent03/work/4ae459b9554b762f/target
...
[INFO] Executing: /bin/sh -c cd /home/builduser/agent03/work/4ae459b9554b762f/target/checkout && git fetch [email protected]:wix/wix-oss-parents.git
[INFO] Working directory: /home/builduser/agent03/work/4ae459b9554b762f/target/checkout
[INFO] Executing: /bin/sh -c cd /home/builduser/agent03/work/4ae459b9554b762f/target/checkout && git checkout 0.25.0
[INFO] Working directory: /home/builduser/agent03/work/4ae459b9554b762f/target/checkout
...
[INFO] Invoking perform goals in directory /home/builduser/agent03/work/4ae459b9554b762f/target/checkout
[INFO] Executing goals 'deploy'...
[DEBUG] Using ${maven.home} of: '/home/builduser/agent03/tools/maven3_1'.
[DEBUG] Executing: /bin/sh -c cd /home/builduser/agent03/work/4ae459b9554b762f/target/checkout && /home/builduser/agent03/tools/maven3_1/bin/mvn -B -X -D maven.repo.local=/home/builduser/.m2/repository -s /home/builduser/agent03/temp/buildTmp/release-settings8995574762584519955.xml -D performRelease=true -P artifactory deploy
[INFO] Inspecting build with total of 4 modules...
[INFO] Installing Nexus Staging features:
...
[DEBUG] Goal:          org.sonatype.plugins:nexus-staging-maven-plugin:1.6.7:deploy (injected-nexus-deploy)
[DEBUG] Style:         Regular
[DEBUG] Configuration: <?xml version="1.0" encoding="UTF-8"?>
[INFO] <configuration>
[INFO]   <altStagingDirectory>${altStagingDirectory}</altStagingDirectory>
[INFO]   <artifact default-value="${project.artifact}"/>
[INFO]   <attachedArtifacts default-value="${project.attachedArtifacts}"/>
[INFO]   <autoDropAfterRelease default-value="true">${autoDropAfterRelease}</autoDropAfterRelease>
[INFO]   <autoReleaseAfterClose default-value="false">false</autoReleaseAfterClose>
[INFO]   <detectBuildFailures default-value="true">${detectBuildFailures}</detectBuildFailures>
[INFO]   <keepStagingRepositoryOnCloseRuleFailure>${keepStagingRepositoryOnCloseRuleFailure}</keepStagingRepositoryOnCloseRuleFailure>
[INFO]   <keepStagingRepositoryOnFailure>${keepStagingRepositoryOnFailure}</keepStagingRepositoryOnFailure>
[INFO]   <mavenSession default-value="${session}"/>
[INFO]   <mojoExecution default-value="${mojoExecution}"/>
[INFO]   <nexusUrl>https://oss.sonatype.org/</nexusUrl>
[INFO]   <offline default-value="${settings.offline}"/>
[INFO]   <packaging default-value="${project.packaging}"/>
[INFO]   <pluginArtifactId default-value="${plugin.artifactId}"/>
[INFO]   <pluginGroupId default-value="${plugin.groupId}"/>
[INFO]   <pluginVersion default-value="${plugin.version}"/>
[INFO]   <pomFile default-value="${project.file}"/>
[INFO]   <serverId>ossrh</serverId>
[INFO]   <skipLocalStaging>${skipLocalStaging}</skipLocalStaging>
[INFO]   <skipNexusStagingDeployMojo>${skipNexusStagingDeployMojo}</skipNexusStagingDeployMojo>
[INFO]   <skipRemoteStaging>${skipRemoteStaging}</skipRemoteStaging>
[INFO]   <skipStaging>${skipStaging}</skipStaging>
[INFO]   <skipStagingRepositoryClose>${skipStagingRepositoryClose}</skipStagingRepositoryClose>
[INFO]   <sslAllowAll default-value="false">${maven.wagon.http.ssl.allowall}</sslAllowAll>
[INFO]   <sslInsecure default-value="false">${maven.wagon.http.ssl.insecure}</sslInsecure>
[INFO]   <stagingDescription>${stagingDescription}</stagingDescription>
[INFO]   <stagingProfileId>${stagingProfileId}</stagingProfileId>
[INFO]   <stagingProgressPauseDurationSeconds default-value="3">${stagingProgressPauseDurationSeconds}</stagingProgressPauseDurationSeconds>
[INFO]   <stagingProgressTimeoutMinutes default-value="5">${stagingProgressTimeoutMinutes}</stagingProgressTimeoutMinutes>
[INFO]   <stagingRepositoryId>${stagingRepositoryId}</stagingRepositoryId>
[INFO]   <updateReleaseInfo>${updateReleaseInfo}</updateReleaseInfo>
[INFO] </configuration>
...
[INFO] Executing: /bin/sh -c cd /home/builduser/agent03/work/4ae459b9554b762f/target/checkout/wix-oss-parents-parent && git log -n1 --date-order HEAD
[INFO] Working directory: /home/builduser/agent03/work/4ae459b9554b762f/target/checkout/wix-oss-parents-parent
[DEBUG] GitLatestRevisionCommandConsumer consumeLine : commit 4875b5de9d40f8a00be37e25d3548755b1f044f4
...
[DEBUG] GitLatestRevisionCommandConsumer consumeLine :     [maven-release-plugin] prepare release 0.25.0
[INFO] Executing: /bin/sh -c cd /home/builduser/agent03/work/4ae459b9554b762f/target/checkout/wix-oss-parents-parent && git pull [email protected]:wix/wix-oss-parents.git HEAD
[INFO] Working directory: /home/builduser/agent03/work/4ae459b9554b762f/target/checkout/wix-oss-parents-parent
[INFO] Executing: /bin/sh -c cd /home/builduser/agent03/work/4ae459b9554b762f/target/checkout/wix-oss-parents-parent && git diff --raw 4875b5de9d40f8a00be37e25d3548755b1f044f4
[INFO] Working directory: /home/builduser/agent03/work/4ae459b9554b762f/target/checkout/wix-oss-parents-parent
...
[INFO] Executing: /bin/sh -c cd /home/builduser/agent03/work/4ae459b9554b762f/target/checkout/wix-oss-parents-parent && git log -n1 --date-order HEAD
[INFO] Working directory: /home/builduser/agent03/work/4ae459b9554b762f/target/checkout/wix-oss-parents-parent
[DEBUG] GitLatestRevisionCommandConsumer consumeLine : commit b5c5fa4e2a0c16d9247ae9261a67aeb4b1f09dda
...
[DEBUG] GitLatestRevisionCommandConsumer consumeLine :     [maven-release-plugin] prepare for next development iteration
[INFO] Storing revision in 'scm.revision' project property.
[INFO] Project at revision b5c5fa4e2a0c16d9247ae9261a67aeb4b1f09dda
...
[INFO] --- maven-gpg-plugin:1.6:sign (sign-artifacts) @ wix-oss-parents-parent ---
...
[DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-gpg-plugin:1.6:sign' with basic configurator -->
[DEBUG]   (f) ascDirectory = /home/builduser/agent03/work/4ae459b9554b762f/target/checkout/wix-oss-parents-parent/target/gpg
[DEBUG]   (f) defaultKeyring = true
[DEBUG]   (f) interactive = false
[DEBUG]   (f) keyname = ***
[DEBUG]   (f) passphraseServerId = ***
[DEBUG]   (f) project = MavenProject: com.wix:wix-oss-parents-parent:0.25.0 @ /home/builduser/agent03/work/4ae459b9554b762f/target/checkout/wix-oss-parents-parent/pom.xml
[DEBUG]   (f) settings = org.apache.maven.execution.SettingsAdapter@f08fdce
[DEBUG]   (f) skip = false
[DEBUG]   (f) useAgent = true
[DEBUG] -- end configuration --
[DEBUG] Generating signature for /home/builduser/agent03/work/4ae459b9554b762f/target/checkout/wix-oss-parents-parent/target/wix-oss-parents-parent-0.25.0.pom
[INFO] 
[INFO] --- maven-install-plugin:2.4:install (default-install) @ wix-oss-parents-parent ---
...
[DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-install-plugin:2.4:install' with basic configurator -->
[DEBUG]   (f) artifact = com.wix:wix-oss-parents-parent:pom:0.25.0
[DEBUG]   (f) attachedArtifacts = [com.wix:wix-oss-parents-parent:pom.asc:0.25.0]
[DEBUG]   (f) createChecksum = false
[DEBUG]   (f) localRepository =        id: local
[INFO]       url: file:///home/builduser/.m2/repository/
[INFO]    layout: none
[DEBUG]   (f) packaging = pom
[DEBUG]   (f) pomFile = /home/builduser/agent03/work/4ae459b9554b762f/target/checkout/wix-oss-parents-parent/pom.xml
[DEBUG]   (s) skip = false
[DEBUG]   (f) updateReleaseInfo = false
[DEBUG] -- end configuration --
...
[INFO] Installing /home/builduser/agent03/work/4ae459b9554b762f/target/checkout/wix-oss-parents-parent/pom.xml to /home/builduser/.m2/repository/com/wix/wix-oss-parents-parent/0.25.0/wix-oss-parents-parent-0.25.0.pom
...
[DEBUG] Installing com.wix:wix-oss-parents-parent/maven-metadata.xml to /home/builduser/.m2/repository/com/wix/wix-oss-parents-parent/maven-metadata-local.xml
[INFO] Installing /home/builduser/agent03/work/4ae459b9554b762f/target/checkout/wix-oss-parents-parent/target/wix-oss-parents-parent-0.25.0.pom.asc to /home/builduser/.m2/repository/com/wix/wix-oss-parents-parent/0.25.0/wix-oss-parents-parent-0.25.0.pom.asc
...
[DEBUG] Installing com.wix:wix-oss-parents-parent/maven-metadata.xml to /home/builduser/.m2/repository/com/wix/wix-oss-parents-parent/maven-metadata-local.xml
...
[INFO] --- nexus-staging-maven-plugin:1.6.7:deploy (injected-nexus-deploy) @ wix-oss-parents-parent ---
...
Configuring mojo 'org.sonatype.plugins:nexus-staging-maven-plugin:1.6.7:deploy' with basic configurator -->
[DEBUG]   (f) artifact = com.wix:wix-oss-parents-parent:pom:0.25.0
[DEBUG]   (f) attachedArtifacts = [com.wix:wix-oss-parents-parent:pom.asc:0.25.0]
[DEBUG]   (f) autoDropAfterRelease = true
[DEBUG]   (f) autoReleaseAfterClose = true
[DEBUG]   (f) detectBuildFailures = true
[DEBUG]   (f) mavenSession = org.apache.maven.execution.MavenSession@4ebadd3d
[DEBUG]   (f) mojoExecution = org.sonatype.plugins:nexus-staging-maven-plugin:1.6.7:deploy {execution: injected-nexus-deploy}
[DEBUG]   (f) nexusUrl = https://oss.sonatype.org/
[DEBUG]   (f) offline = false
[DEBUG]   (f) packaging = pom
[DEBUG]   (f) pluginArtifactId = nexus-staging-maven-plugin
[DEBUG]   (f) pluginGroupId = org.sonatype.plugins
[DEBUG]   (f) pluginVersion = 1.6.7
[DEBUG]   (f) pomFile = /home/builduser/agent03/work/4ae459b9554b762f/target/checkout/wix-oss-parents-parent/pom.xml
[DEBUG]   (f) serverId = ossrh
[DEBUG]   (f) sslAllowAll = false
[DEBUG]   (f) sslInsecure = false
[DEBUG]   (f) stagingProgressPauseDurationSeconds = 3
[DEBUG]   (f) stagingProgressTimeoutMinutes = 5
[DEBUG] -- end configuration --
...
[INFO] Performing local staging (local stagingDirectory="/home/builduser/agent03/work/4ae459b9554b762f/target/checkout/wix-oss-parents-parent/target/nexus-staging/staging")...
...

Regarding .m2, this is a build agent; it gets a fresh .m2...

Any ideas?

1
Root cause found; bug in maven scm plugin - Ohad

1 Answers

0
votes

Mmhhh... Something is not so clear to me in your explanation..

First i don't think in this case the project structure is a problem...

The usual behaviour is:

  1. I got a project 1.0-SNAPSHOT..
  2. I release it with the maven release plugin..
  3. This is tagged as 1.0 and committed into the tags folder
  4. Then the trunk\branch version is incresed as 1.1-SNAPSHOT..

So it seems that you are downloading the trunk version and you are checking for the tagged version into the remote repository...

Can this be right?

If not, it is some kind of strange version related to the plugin execution, can you please check the SVN tag, and tell me which version as the pom there, and the comment of the commit with which the tag has been created?

The output of the two commands can also be an help to understand whats going on...

Lat thing, maybe not related, but are you downloading the artifacts into .m2 local repo, can you clean it and try again? It would not be the first time .m2 do something strange :)