Hi, I work with Scott on Rational Team Concert.  I'm the RTC Build 
component lead.

That's an interesting suggestion, Jesse.  Currently we're compiling against 
the RTC client libraries using Eclipse Tycho, with our plugin POM 
configured to point to an Eclipse P2 repository containing the client libs. 
 At runtime, we do poof up a URLClassLoader, based on the configured path 
to the RTC build toolkit (a global config option for our plugin).  Having a 
library of stubs just to allow compilation is a possibility too.  Another 
option we've explored is running a script to import the client lib jars 
into the local Maven repo, but currently Tycho is working OK for us.  One 
downside is that the P2 repository is an external dependency, and thus 
somewhat contrary to the spirit of Maven.

We'd really like for our plugin to be included in Jenkins' library of 
plugins.  We're also planning to contribute the source to the Jenkins 
project, and are currently seeking clearance to do so.
What I'd like to understand better is what the general requirements are for 
compiling/building/packaging Jenkins plugins.  Is it possible to contribute 
just the built .hpi file?  If the source is contributed, is it normally 
compiled together with the main Jenkins code for each build?  What about 
running tests?  I assume you don't have every possible SCM system available 
in the Jenkins build farm.  What do you do for other plugins for other 
commercial SCM systems such as StarTeam, ClearCase, etc.

Also, we do realize that there's an existing Jenkins plugin for RTC, 
written by Deluan Quintao.  Deluan says he has moved on to other work, and 
is not actively maintaining the plugin.  Our current state of 
implementation is roughly equivalent to his, but works directly against the 
RTC client libraries, whereas his invokes the RTC SCM CLI, which has a 
significant startup cost.  We also have some other concerns about the 
scalability of the current plugin, and how it processes change sets.  Over 
the next few months, we'll be adding more features to more tightly 
integrate with RTC, e.g. at the level of RTC Builds, not just SCM.  Our 
intent is to provide an "official" IBM Rational RTC plugin, which we will 
continue to develop and support, in addition to accepting contributions 
from the Jenkins community.

Thank you all in advance for helping us through the process of getting this 
contributed in a way that's acceptable to all involved.

Regards,
Nick

On Thursday, January 31, 2013 7:55:45 PM UTC-5, Jesse Glick wrote:

> On 01/31/2013 06:59 PM, Jan Ruzicka wrote: 
> > The issue is worked around by having the StarTeam jars only in local 
> private repository. 
>
> Another solution would be to create a sister jar-packaging Maven project 
> (under a pom-packaging parent) containing stubs for all the classes/methods 
> you use from the 
> nonredistributable API. Then just make this a provided-scope dependency of 
> the hpi project, and load the real JAR using a URLClassLoader at runtime 
> based on a configured 
> installation location. 
>

-- 
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 [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to