Hi All,


I'm new to Jenkins and would like a little advice on how best to build, 
promote, tag and release maven projects that we have in Git.


For re-usable library components, I envision the following:


Library projects follow the normal Maven major.minor.version-SNAPSHOT 
versioning scheme.

Jenkins continuously polls a Git branch of the project for changes and 
triggers builds automatically.

Every successful snapshot build publishes to Nexus.

Nexus is configured to only retain the last N snapshots so that they don't 
pile up, filling up the disk.


Now, when the library is deemed ready/releasable I'm not clear on the 
following…


Does the version in the pom.xml need to updated and committed to Git by 
developers? i.e. outside the scope of Jenkins

If so, that would imply that a new build (compile/test) need to be done, no?

Ideally I'd like to avoid rebuilding and have some sort of manual build 
promotion step.

Specifically, I'd like for a developer to be able to click a button in 
Jenkins to release/promote the library from SNAPSHOT to RELEASE, avoid 
recompiling/testing and just tag Git and publish to Nexus.


Is this a good use case for the Promoted Builds Plugin, or maybe the Build 
Pipeline Plugin?


I suppose part of my confusion comes from a lack of understanding of where 
the responsibilities should be divided between Maven and Jenkins.

Should Maven only be used for building the artifacts? i.e. no Maven release 
plugin and no SCM info in the pom.xml?


Any insights would be most welcome.


Thanks,


Frank Grimes

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to