Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Buckminster » Split Buckminster build
Split Buckminster build [message #1709054] Wed, 23 September 2015 15:16 Go to next message
Raphael Geissler is currently offline Raphael GeisslerFriend
Messages: 3
Registered: May 2013
Junior Member
Hi *,

We build a Eclipse RCP application with Buckminster. Everthing is working fine, but we want to improve the Jenkins-Job execution time.

Our Buckminster commands file looks similar to this:
setpref targetPlatformPath=...
resolve ...
resolve ...
build ...
emma ...
emma ...
emma ...
emma ...
emma ...
emma ...
emma ...
emma ...
emma ...
perform -D target.os=* -D target.ws=* -D target.arch=* ...#site.p2
perform -D target.os=win32 -D target.ws=win32 -D target.arch=x86 ...#create.product.zip
perform -D target.os=win32 -D target.ws=win32 -D target.arch=x86_64 ...#create.product.zip
perform -D target.os=linux -D target.ws=gtk -D target.arch=x86 ...#create.product.zip
perform -D target.os=linux -D target.ws=gtk -D target.arch=x86_64 ...#create.product.zip

What I want to do is to split this in two buckminster runs, e.g. one for the emma commands and one for the perform commands, without to do the build stuff twice.

Is there a possibility to do that? Can I set somehow the build directories?

Thanks for your help,

Raphael
Re: Split Buckminster build [message #1709435 is a reply to message #1709054] Mon, 28 September 2015 11:53 Go to previous messageGo to next message
Lorenzo Bettini is currently offline Lorenzo BettiniFriend
Messages: 1742
Registered: July 2009
Location: Firenze, Italy
Senior Member
On 23/09/2015 17:16, Raphael Geissler wrote:
> Hi *,
>
> We build a Eclipse RCP application with Buckminster. Everthing is
> working fine, but we want to improve the Jenkins-Job execution time.
> Our Buckminster commands file looks similar to this:
> setpref targetPlatformPath=...
> resolve ...
> resolve ...
> build ...
> emma ...
> emma ...
> emma ...
> emma ...
> emma ...
> emma ...
> emma ...
> emma ...
> emma ...
> perform -D target.os=* -D target.ws=* -D target.arch=* ...#site.p2
> perform -D target.os=win32 -D target.ws=win32 -D target.arch=x86
> ...#create.product.zip perform -D target.os=win32 -D target.ws=win32 -D
> target.arch=x86_64 ...#create.product.zip perform -D target.os=linux -D
> target.ws=gtk -D target.arch=x86 ...#create.product.zip perform -D
> target.os=linux -D target.ws=gtk -D target.arch=x86_64
> ...#create.product.zip
> What I want to do is to split this in two buckminster runs, e.g. one for
> the emma commands and one for the perform commands, without to do the
> build stuff twice.
> Is there a possibility to do that? Can I set somehow the build directories?
> Thanks for your help,
>
> Raphael
>

Hi

You can specify most directories with buckminster (please have a look at
the documentation); if I understand correctly, it should be enough to
"point" to the same Buckminster eclipse workspace and source folders to
run tests without rebuilding the sources...

That would mimic, for example, opening a workspace with Eclipse, doing a
full build, close Eclipse, rerun Eclipse opening the same workspace and
run the tests (without needing to recompile).

hope this helps
Lorenzo

--
Lorenzo Bettini, PhD in Computer Science, DI, Univ. Torino
HOME: http://www.lorenzobettini.it
Xtext Book:
http://www.packtpub.com/implementing-domain-specific-languages-with-xtext-and-xtend/book
Re: Split Buckminster build [message #1709456 is a reply to message #1709054] Mon, 28 September 2015 14:09 Go to previous messageGo to next message
Raphael Geissler is currently offline Raphael GeisslerFriend
Messages: 3
Registered: May 2013
Junior Member
Hi Lorenzo,

A short look in the documentation shows me, that I can set the workspace with '-data' !

So all I have to do is:
$ ~/buckminster/buckminster -data buckminster.workspace --scriptfile commands.txt

What's confusing me a little bit is that my command line help doesn't show the '-data'-flag. Here is the help text:

------------------------------------------------------------------------------------------------------------------
$ ~/buckminster/buckminster --help
Help text for buckminster:
This is the common launcher for commands.

A number of options can be set in common for all commands. Use '--' to end
parsing of options in case of ambiguity.

usage: buckminster
[{ -? | --help }]
[--displaystacktrace]
[{ -L | --loglevel } <loglevel> ]
[--notrapctrlc]
[{ --scriptfile <filename> } | {<commandname> [<commandflags>]}]

Try "buckminster listcommands" for a list of available commands.

-?
--help
Show this help text

--displaystacktrace
Also prints the stack trace in case of an exception.

-L <loglevel>
--loglevel <loglevel>
Set log level to one of NONE, ERROR, WARNING, INFO, or DEBUG.

--notrapctrlc
Turn off trapping of Ctrl-C (SIGINT). This may lessen the ability to cancel
ongoing work in a predictable manner.

-S <filename>
--scritpfile <filename>
Read commands from a file. The following rules apply:
- If the file contains $property or ${property} constructs, they will
be expanded as follows:
- If the property is prefixed with env: the remaining part will be expanded
as an environment variable (requires Java 5 or later).
- All other properties are expanded using the Java system properties.
- If java 1.5 or newer is used, the file may contain $env or ${env} entries
to denote environment variables.
- Backslash is interpreted as escape character so Windows filenames must be
escaped.
- Strings within single quotes are passed verbatim to the executor.
- Strings within double quotes are scanned for environment variable
substitution.
------------------------------------------------------------------------------------------------------------------

Nevertheless the flag is working fine!

Thanks for your help!

Raphael
Re: Split Buckminster build [message #1710004 is a reply to message #1709456] Fri, 02 October 2015 14:51 Go to previous message
Lorenzo Bettini is currently offline Lorenzo BettiniFriend
Messages: 1742
Registered: July 2009
Location: Firenze, Italy
Senior Member
On 28/09/2015 16:10, Raphael Geissler wrote:
> Hi Lorenzo,
>
> A short look in the documentation shows me, that I can set the workspace
> with '-data' !
>
> So all I have to do is:
> $ ~/buckminster/buckminster -data buckminster.workspace --scriptfile
> commands.txt
>
> What's confusing me a little bit is that my command line help doesn't
> show the '-data'-flag. Here is the help text:

I think that it does not appear there because it's a "standard" eclipse
command line argument, and buckminster is an eclipse product.

You can pass -data to eclipse on the command line to specify the workspace.

cheers
Lorenzo

--
Lorenzo Bettini, PhD in Computer Science, DI, Univ. Torino
HOME: http://www.lorenzobettini.it
Xtext Book:
http://www.packtpub.com/implementing-domain-specific-languages-with-xtext-and-xtend/book
Previous Topic:Simplest possible buckminster build?
Next Topic:java.lang.IllegalArgumentException: The ' ' character is illegal in a branch/tag qualifier
Goto Forum:
  


Current Time: Fri Feb 23 02:18:17 GMT 2018

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

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