Page 1 of 1

Configuring Jenkins using Buckminster

Posted: Mon Aug 10, 2015 8:50 pm
by jwe
Hey guys,

i'm trying to configure Jenkins using Buckminster. I installed buckminster plugin for jenkins, but the plugin requires some commands as well. Any hints which commands are needed to run tests from the Odysseus projects and build client, server and monolitic?


Thanks in advance.

Greetings jwe

Re: Configuring Jenkins using Buckminster

Posted: Wed Aug 12, 2015 8:46 am
by Marco Grawunder
Hi,

(just back from vacation)

because not all implementers of Odysseus use a proper dependencies definiton, we created some tools to support the build process.

You will have to install the target platform (we do this with a different job) (after a checkout of http://isdb1.offis.uni-oldenburg.de/rep ... on.feature ):

Buckminster 3.7
Commands: importtargetdefinition -A '${WORKSPACE}/common/de.uniol.inf.is.odysseus.common.feature/target-platform.target'

Post-Build:
Archive and publish an Eclipse Target Platform:
Path:.metadata/.plugins/org.eclipse.pde.core/.bundle_pool
Name: Odysseus Target Platform

To create the monolithic version the following things are done after the checkout:

Code: Select all

rm -rf ${WORKSPACE}/buckminster.temp
rm -rf ${WORKSPACE}/buckminster.output
rm -rf ${WORKSPACE}/buckminster.built
rm -rf ${WORKSPACE}/buckminster.products

java -version
javac "${WORKSPACE}/tooling/ci/de.uniol.inf.is.odysseus.creatermap/src/de/uniol/inf/is/odysseus/creatermap/CreateRMap.java"
java -cp "${WORKSPACE}/tooling/ci/de.uniol.inf.is.odysseus.creatermap/src" de.uniol.inf.is.odysseus.creatermap.CreateRMap "${WORKSPACE}" "${WORKSPACE}/tooling/ci/de.uniol.inf.is.odysseus.updatesite" "${WORKSPACE}/tooling/ci/de.uniol.inf.is.odysseus.update.p2"
Run Buckminster:
Version 3.7
Target Platform: Odyssues Target Platform
...
Commands:

Code: Select all

import '${WORKSPACE}/tooling/ci/de.uniol.inf.is.odysseus.updatesite/site.cquery'
build
perform -D qualifier.replacement.*=${SVN_REVISION} -D target.os=* -D target.ws=* -D target.arch=* de.uniol.inf.is.odysseus.update.p2#site.p2.publish
perform -D qualifier.replacement.*=${SVN_REVISION} -D target.os=win32 -D target.ws=win32 -D target.arch=x86 -D ws.root=${WORKSPACE} de.uniol.inf.is.odysseus.updatesite#create.serverandstudio.product.zip
perform -D qualifier.replacement.*=${SVN_REVISION} -D target.os=win32 -D target.ws=win32 -D target.arch=x86_64 -D ws.root=${WORKSPACE} de.uniol.inf.is.odysseus.updatesite#create.serverandstudio.product.zip
perform -D qualifier.replacement.*=${SVN_REVISION} -D target.os=linux -D target.ws=gtk -D target.arch=x86 -D ws.root=${WORKSPACE} de.uniol.inf.is.odysseus.updatesite#create.serverandstudio.product.zip
perform -D qualifier.replacement.*=${SVN_REVISION} -D target.os=linux -D target.ws=gtk -D target.arch=x86_64 -D ws.root=${WORKSPACE} de.uniol.inf.is.odysseus.updatesite#create.serverandstudio.product.zip
perform -D qualifier.replacement.*=${SVN_REVISION} -D target.os=macosx -D target.ws=cocoa -D target.arch=x86 -D ws.root=${WORKSPACE} de.uniol.inf.is.odysseus.updatesite#create.serverandstudio.product.zip
perform -D qualifier.replacement.*=${SVN_REVISION} -D target.os=macosx -D target.ws=cocoa -D target.arch=x86_64 -D ws.root=${WORKSPACE} de.uniol.inf.is.odysseus.updatesite#create.serverandstudio.product.zip


Artifacts Deployer:
buckminster.products/*.zip

Hope that helps a little.

Greetings,

Marco

Re: Configuring Jenkins using Buckminster

Posted: Wed Aug 12, 2015 10:43 am
by jwe
Thank you, Marco.