maven release uploading a SNAPSHOT version but not the release version

2,439 views
Skip to first unread message

vinod

unread,
Jul 12, 2014, 12:08:59 AM7/12/14
to jenkin...@googlegroups.com
Hi,

I'm trying to follow the instructions specified at https://wiki.jenkins-ci.org/display/JENKINS/Hosting+Plugins#HostingPlugins-Releasingtojenkinsci.org to release my plugin (mesos-plugin).

It looks like, at the end of the release the plugin that is being released is 0.4.0-SNAPSHOT instead of 0.4.0, despite me instructing the release plugin to do otherwise. This might be me being a maven noob, so if I'm doing something wrong please let me know.

Beginning of my pom file:
--------------------------------------

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

  <modelVersion>4.0.0</modelVersion>

  <parent>

    <groupId>org.jenkins-ci.plugins</groupId>

    <artifactId>plugin</artifactId>

    <version>1.509.1</version><!-- which version of Jenkins is this plugin built against? -->

  </parent>


  <groupId>org.jenkins-ci.plugins</groupId>

  <artifactId>mesos</artifactId>

  <version>0.4.0-SNAPSHOT</version>

  <packaging>hpi</packaging>

  <url>http://wiki.jenkins-ci.org/display/JENKINS/Mesos+Plugin</url>


  <scm>

    <connection>scm:git:ssh://github.com/jenkinsci/mesos-plugin.git</connection>

    <developerConnection>scm:git:ssh://g...@github.com/jenkinsci/mesos-plugin.git</developerConnection>

    <url>https://github.com/jenkinsci/mesos-plugin</url>

  </scm>

....

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


Here is me doing the release:

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

➜  mesos-plugin git:(master) mvn -Dresume=false release:prepare release:perform

[INFO] Scanning for projects...

[INFO]                                                                         

[INFO] ------------------------------------------------------------------------

[INFO] Building mesos 0.4.0-SNAPSHOT

[INFO] ------------------------------------------------------------------------

[INFO] 

[INFO] --- maven-release-plugin:2.2.2:prepare (default-cli) @ mesos ---

[INFO] Verifying that there are no local modifications...

[INFO]   ignoring changes on: pom.xml.next, release.properties, pom.xml.releaseBackup, pom.xml.backup, pom.xml.branch, pom.xml.tag

[INFO] Executing: /bin/sh -c cd /Users/vinod/workspace/mesos-plugin && git status

[INFO] Working directory: /Users/vinod/workspace/mesos-plugin

[INFO] Checking dependencies and plugins for snapshots ...

[WARNING] The POM for org.jenkins-ci.tools:maven-hpi-plugin:jar:1.93 is missing, no dependency information available

[ERROR] Failed to build parent project for org.jenkins-ci.plugins:mesos:hpi:0.4.0-SNAPSHOT

org.apache.maven.project.ProjectBuildingException: Some problems were encountered while processing the POMs:

[ERROR] Unresolveable build extension: Plugin org.jenkins-ci.tools:maven-hpi-plugin:1.93 or one of its dependencies could not be resolved: Failure to find org.jenkins-ci.tools:maven-hpi-plugin:jar:1.93 in http://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced @ 


at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:182)

at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:353)

at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:273)

at org.apache.maven.project.MavenProject.getParent(MavenProject.java:386)

at org.apache.maven.project.MavenProject.getParentArtifact(MavenProject.java:1321)

at org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.checkProject(CheckDependencySnapshotsPhase.java:120)

at org.apache.maven.shared.release.phase.CheckDependencySnapshotsPhase.execute(CheckDependencySnapshotsPhase.java:98)

at org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:206)

at org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:142)

at org.apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.java:104)

at org.apache.maven.plugins.release.PrepareReleaseMojo.prepareRelease(PrepareReleaseMojo.java:302)

at org.apache.maven.plugins.release.PrepareReleaseMojo.execute(PrepareReleaseMojo.java:258)

at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:132)

at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)

at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)

at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)

at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)

at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)

at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)

at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:120)

at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:347)

at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:154)

at org.apache.maven.cli.MavenCli.execute(MavenCli.java:584)

at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:213)

at org.apache.maven.cli.MavenCli.main(MavenCli.java:157)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:597)

at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)

at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)

at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)

at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)

Caused by: org.apache.maven.model.building.ModelBuildingException: 1 problem was encountered while building the effective model for org.jenkins-ci.plugins:plugin:1.509.1

[ERROR] Unresolveable build extension: Plugin org.jenkins-ci.tools:maven-hpi-plugin:1.93 or one of its dependencies could not be resolved: Failure to find org.jenkins-ci.tools:maven-hpi-plugin:jar:1.93 in http://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced @ 


at org.apache.maven.model.building.DefaultModelProblemCollector.newModelBuildingException(DefaultModelProblemCollector.java:195)

at org.apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.java:446)

at org.apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.java:398)

at org.apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.java:389)

at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:148)

... 32 more

What is the release version for "mesos"? (org.jenkins-ci.plugins:mesos) 0.4.0: : 

What is SCM release tag or label for "mesos"? (org.jenkins-ci.plugins:mesos) mesos-0.4.0: : 

What is the new development version for "mesos"? (org.jenkins-ci.plugins:mesos) 0.4.1-SNAPSHOT: : 0.5.0-SNAPSHOT

[INFO] Transforming 'mesos'...

[INFO] Not generating release POMs

[INFO] Executing goals 'clean verify'...

[WARNING] Maven will be executed in interactive mode, but no input stream has been configured for this MavenInvoker instance.

[INFO] [INFO] Scanning for projects...

[INFO] [INFO]                                                                         

[INFO] [INFO] ------------------------------------------------------------------------

[INFO] [INFO] Building mesos 0.4.0

.....

.....

......

[INFO] Uploaded: http://maven.jenkins-ci.org:8081/content/repositories/snapshots/org/jenkins-ci/plugins/mesos/0.4.0-SNAPSHOT/mesos-0.4.0-20140712.035221-3-javadoc.jar (92 KB at 53.8 KB/sec)

[INFO] Uploading: http://maven.jenkins-ci.org:8081/content/repositories/snapshots/org/jenkins-ci/plugins/mesos/0.4.0-SNAPSHOT/maven-metadata.xml

[INFO] 2/2 KB     

[INFO]          

[INFO] Uploaded: http://maven.jenkins-ci.org:8081/content/repositories/snapshots/org/jenkins-ci/plugins/mesos/0.4.0-SNAPSHOT/maven-metadata.xml (2 KB at 3.8 KB/sec)

[INFO] [INFO] ------------------------------------------------------------------------

[INFO] [INFO] BUILD SUCCESS

[INFO] [INFO] ------------------------------------------------------------------------

[INFO] [INFO] Total time: 44.636 s

[INFO] [INFO] Finished at: 2014-07-11T20:52:39-07:00

[INFO] [INFO] Final Memory: 38M/81M

[INFO] [INFO] ------------------------------------------------------------------------

[INFO] Cleaning up after release...

[INFO] ------------------------------------------------------------------------

[INFO] BUILD SUCCESS

[INFO] ------------------------------------------------------------------------

[INFO] Total time: 01:38 min

[INFO] Finished at: 2014-07-11T20:52:39-07:00

[INFO] Final Memory: 9M/81M

[INFO] ------------------------------------------------------------------------

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

I see that the snapshot plugin v0.4.0-SNAPSHOT was upload to the snapshot repo:

http://repo.jenkins-ci.org/snapshots/org/jenkins-ci/plugins/mesos/

But not v0.4.0  to the releases repo:

http://repo.jenkins-ci.org/releases/org/jenkins-ci/plugins/mesos/


Here is how my git looks after the release. Notice that pom.xml is added to index with new version but has not been committed. I thought/remember the maven plugin did this automatically?

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

$ git diff --cached

diff --git a/pom.xml b/pom.xml

index 514bdb1..6a9a981 100644

--- a/pom.xml

+++ b/pom.xml

@@ -8,7 +8,7 @@

 

   <groupId>org.jenkins-ci.plugins</groupId>

   <artifactId>mesos</artifactId>

-  <version>0.4.0-SNAPSHOT</version>

+  <version>0.5.0-SNAPSHOT</version>

   <packaging>hpi</packaging>

   <url>http://wiki.jenkins-ci.org/display/JENKINS/Mesos+Plugin</url>

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


I also just noticed that the same issue happened with my previous release (0.3.0) too. Though the earlier releases (0.1.0 and 0.20) seem to have been released fine.

So, I guess I'm missing a step? Though its not clear what it is from reading the instructions on jenkins plugins page.


Thanks,

Vinod






Vincent Latombe

unread,
Jul 12, 2014, 12:12:34 AM7/12/14
to Jenkins Dev
Hi,

You can read [1] to solve your issue. It is a recurring problem with recent versions of git combined with outdated version of maven-release-plugin.

[1] https://groups.google.com/forum/#!searchin/jenkinsci-dev/how$20to$20release$20plugin/jenkinsci-dev/XldX7ONGFDw/75gWMyaeayMJ

Vincent


--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-de...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Vinod Kone

unread,
Jul 12, 2014, 12:28:39 AM7/12/14
to jenkin...@googlegroups.com
That worked. Thanks so much!

Peter Rader

unread,
Jul 13, 2014, 5:51:42 AM7/13/14
to jenkin...@googlegroups.com
Hi,

your pom is correct, the warning above of the [ERROR] sais, he cant find
jenkins's dependency.

Maven has "pluginGroups", the wiki sais, you need the org.jenkins-ci.tools
plug-in-Group for development. But you also need it for releasing. Add the
settings.xml-configuration from
https://wiki.jenkins-ci.org/display/JENKINS/Plugin+tutorial

I wrote a usefull story in stackoverflow about my experiences here:
http://stackoverflow.com/questions/24062982 .

BTW: Please change the url
http://wiki.jenkins-ci.org/display/JENKINS/Mesos+Plugin to https.

Regards, Grim

-----Ursprüngliche Nachricht-----
Von: "Vincent Latombe" <vincent...@gmail.com>
An: "Jenkins Dev" <jenkin...@googlegroups.com>
Gesendet: Samstag, 12. Juli 2014 05:12
Betreff: Re: maven release uploading a SNAPSHOT version but not the release
version
> ? mesos-plugin git:(master) mvn -Dresume=false release:prepare
Reply all
Reply to author
Forward
0 new messages