Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [buckminster-dev] Different builds using Buckminster

Hi.

I've thought a bit on what I really want and how can I implement it using Buckminster.

So, let's look into such a situation:
1) I have three plug-ins: "plA", "plB" and "plC", located in SVN.
2) "plA" depends on "plB" and "plC".
3) I've created CQUERY to provide me with "plA" plugin (and all of its dependencies - that means "plB" and "plC").
4) I resolve this query and get "plA", "plB" and "plC" in my workspace.

Everything is perfect.


Now imagine a situation, where I need ONLY "plA" in my workspace, but the whole project has to be in working state. That means I have to put "plB" and "plC" in target platform somehow. To generalize it, I can create such requirement:

"I have a number of plug-ins in SVN repository. I have a CQUERY, which provides me with a top-level plug-in and all of its dependencies. In this CUQERY I have to specify, which plug-ins have to be materialized into my workspace, and which have to be built and put to target platform".


I've thought how can I implement such a requirement and looked at standard component action "buckminster.prebind". The idea was that on the phase of binding plug-in into workspace I can run Ant script (located in "buckminster.prebind" action of each plug-in), that will determine, whether this plug-in has to be put into workspace as Eclipse project, or if it has to be built and put to target platform. My CQUERY, which I use to get top-level plug-in, can have a number of properties, named for example like "buckminster.cquery.source.plN", which, if it is present, indicates, that I have to put "plN" into a workspace.

To implement this behavior I have to know a little more about Buckminster integration with PDE:
1) How can I export Eclipse plug-in using ant script called in Buckminster action? I need this to export unnecessary (in my workspace, not in the whole project) plug-ins to target platform as jars. Is there a standard ant task for this?
2) How can I tell Buckminster not to import plug-in to workspace using ant script? I need this to stop Buckminster from importing plug-in, when it determines that this plug-in has to be exported to target platform, and so has not to be present in workspace.

Thanks.

Back to the top