Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Oomph » Oomph headless(Hudson continuous building)
Oomph headless [message #1781213] Fri, 02 February 2018 21:12 Go to next message
Mario Jauvin is currently offline Mario JauvinFriend
Messages: 34
Registered: October 2015
Member
I am trying to create a oomph project setup that I can use in Hudson/Jenkins to perform continuous builds. Is it possible to have Hudson/Jenkins use the project setup to both provision the workspace in eclipse for user development and to provision the workspace in headless mode on Hudson/Jenkins for building. Are there examples, docs that can help this process? Are there tips?
Re: Oomph headless [message #1781219 is a reply to message #1781213] Sat, 03 February 2018 08:35 Go to previous messageGo to next message
Ed Merks is currently offline Ed MerksFriend
Messages: 29536
Registered: July 2009
Senior Member
No, a headless mode has been asked about many times and https://bugs.eclipse.org/bugs/show_bug.cgi?id=487626 is open. If someone cares enough to fund that effort, it would be done. In any case, even we wouldn't want to use that ourselves for Oomph's build; how would such a thing help for building on Hudson/Jenkins? I would expect a Maven/Tycho build for that purpose, as we have for Oomph itself.
Re: Oomph headless [message #1781233 is a reply to message #1781219] Sat, 03 February 2018 18:52 Go to previous messageGo to next message
Mario Jauvin is currently offline Mario JauvinFriend
Messages: 34
Registered: October 2015
Member
How do you guarantee that what is built with Tycho/Maven is the same as what is created with the oomph project setup with your current oomph builds? Can you generate the Hudson build from the oomph setup? Would that be a good idea?
Re: Oomph headless [message #1781236 is a reply to message #1781233] Sun, 04 February 2018 05:49 Go to previous messageGo to next message
Ed Merks is currently offline Ed MerksFriend
Messages: 29536
Registered: July 2009
Senior Member
No project at Eclipse does a build that replicates their workspace development environment. The development environment uses JDT to compile the sources in the workspace against the binaries in the target platform, the build job uses Maven POMs to determine what to build and uses javac to compile Java sources. So no project ever guarantees that their development environment creates exactly the same artifacts as their build job because it definitely doesn't. But if things are well designed, you can replicate the build job locally with the External Tools Configurations that launches a Maven Tycho build. That will do quite a bit more things than you do in your development environment, e.g., it builds bundle jars, whereas JDT just populates the bin folder, and it typically builds an update site, which you don't generally need at development time, and on a real build server, it signs the jars.

An important driver for Tycho builds is often the *.target file, which in the case of Oomph (and with Targlets in general), we generate a *.target as a side effect of resolving the target platform. So that ensures that the build job compiles against what we're also using in our development environment.

It makes no sense to generate a build from the setup. The build is driven by what's in the POMs and that's not determined by the setup description. The m2e project supports POM generation for projects in the development workspace.
Re: Oomph headless [message #1781377 is a reply to message #1781236] Tue, 06 February 2018 15:25 Go to previous messageGo to next message
Mario Jauvin is currently offline Mario JauvinFriend
Messages: 34
Registered: October 2015
Member
Thanks for the good description especially the differences between oomph and Tycho.

In my organization, we have several hundred builds that share the exact same configuration between the dev workspace and the build workspace. That is definitely something different than the eclipse environment. One even more notable difference is we do not use javac to compile but rather JDT because JDT respects the access restrictions specified in the dev workspace .classpath so we would like to continue doing this. Also, our builds do not include eclipse plugins so Tycho is not used. However, we are moving to a maven build system and I am looking how to best move forward.

Is there a way to have maven respect the .classpath settings without using JDT?
Re: Oomph headless [message #1781391 is a reply to message #1781377] Tue, 06 February 2018 16:46 Go to previous message
Eike Stepper is currently offline Eike StepperFriend
Messages: 6394
Registered: July 2009
Senior Member
I suspect that only JDT uses the .classpath file. Recently I've seen that Tycho can make use of the JDT compiler, though: https://wiki.eclipse.org/Tycho/FAQ#Can_I_use_the_Tycho_compiler_support_in_non-OSGi_projects.2C_too.3F

I haven't tred it out.
Previous Topic:Possible corruption of p2 pool
Next Topic:Using bundle pools in eclipse installer simple mode
Goto Forum:
  


Current Time: Wed Sep 19 05:46:36 GMT 2018

Powered by FUDForum. Page generated in 0.02175 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top