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.
