Skip to content

Commit 567743c

Browse files
committed
#553434 Use one Maven Import per root folder
When importing all projects within one "Maven Import"-Task, an infinitive loop occurred. Now there are "Maven Import"-Tasks for each root folder and the "Locate Nested Projects" flag is only set to true if there are nested projects. With this approach, the infinitive loop does not occur. For the user of the Oomph setup there is no difference. The only drawback is that a "Maven Import"-Task has to be added in the setup file if new root folders/projects get introduced. Bug: 553434 Change-Id: I4e925dd45d91931d4a63ac769c57b9d0304a23e9 Signed-off-by: Martin Schreiber <[email protected]>
1 parent fe6109a commit 567743c

File tree

1 file changed

+201
-31
lines changed

1 file changed

+201
-31
lines changed

setup/Tycho.setup

+201-31
Original file line numberDiff line numberDiff line change
@@ -8,18 +8,17 @@
88
xmlns:maven="http://www.eclipse.org/oomph/setup/maven/1.0"
99
xmlns:pde="http://www.eclipse.org/oomph/setup/pde/1.0"
1010
xmlns:predicates="http://www.eclipse.org/oomph/predicates/1.0"
11+
xmlns:projects="http://www.eclipse.org/oomph/setup/projects/1.0"
1112
xmlns:setup="http://www.eclipse.org/oomph/setup/1.0"
1213
xmlns:setup.p2="http://www.eclipse.org/oomph/setup/p2/1.0"
1314
xmlns:setup.workingsets="http://www.eclipse.org/oomph/setup/workingsets/1.0"
1415
xmlns:workingsets="http://www.eclipse.org/oomph/workingsets/1.0"
15-
xsi:schemaLocation="http://www.eclipse.org/oomph/setup/git/1.0 http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/models/Git.ecore http://www.eclipse.org/oomph/setup/jdt/1.0 http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/models/JDT.ecore http://www.eclipse.org/oomph/setup/maven/1.0 http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/models/Maven.ecore http://www.eclipse.org/oomph/setup/pde/1.0 http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/models/PDE.ecore http://www.eclipse.org/oomph/predicates/1.0 http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/models/Predicates.ecore http://www.eclipse.org/oomph/setup/workingsets/1.0 http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/models/SetupWorkingSets.ecore http://www.eclipse.org/oomph/workingsets/1.0 http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/models/WorkingSets.ecore"
16+
xsi:schemaLocation="http://www.eclipse.org/oomph/setup/git/1.0 http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/models/Git.ecore http://www.eclipse.org/oomph/setup/jdt/1.0 http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/models/JDT.ecore http://www.eclipse.org/oomph/setup/maven/1.0 http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/models/Maven.ecore http://www.eclipse.org/oomph/setup/pde/1.0 http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/models/PDE.ecore http://www.eclipse.org/oomph/predicates/1.0 http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/models/Predicates.ecore http://www.eclipse.org/oomph/setup/projects/1.0 http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/models/Projects.ecore http://www.eclipse.org/oomph/setup/workingsets/1.0 http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/models/SetupWorkingSets.ecore http://www.eclipse.org/oomph/workingsets/1.0 http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/models/WorkingSets.ecore"
1617
name="tycho"
1718
label="Tycho">
1819
<setupTask
1920
xsi:type="setup:CompoundTask"
2021
name="User Preferences">
21-
<annotation
22-
source="http://www.eclipse.org/oomph/setup/UserPreferences"/>
2322
<setupTask
2423
xsi:type="setup:CompoundTask"
2524
name="org.eclipse.egit.ui">
@@ -106,46 +105,217 @@
106105
</configSections>
107106
<description>${scope.project.label}</description>
108107
</setupTask>
109-
<setupTask
110-
xsi:type="maven:MavenImportTask"
111-
id="TychoProjectImport"
112-
projectNameTemplate="">
113-
<sourceLocator
114-
rootFolder="${git.cloneTycho.location}"
115-
locateNestedProjects="true"/>
116-
<description>Imports all the Tycho Projects as Maven Projects</description>
117-
</setupTask>
118108
<setupTask
119109
xsi:type="setup.workingsets:WorkingSetTask">
120110
<workingSet
121111
name="Tycho">
122112
<predicate
123-
xsi:type="predicates:AndPredicate">
124-
<operand
125-
xsi:type="predicates:RepositoryPredicate"
126-
project="tycho"/>
127-
<operand
128-
xsi:type="workingsets:ExclusionPredicate"
129-
excludedWorkingSet="//@setupTasks.7/@workingSets[name='TychoExtras']"/>
130-
</predicate>
113+
xsi:type="workingsets:ExclusionPredicate"
114+
excludedWorkingSet="//@setupTasks.6/@workingSets[name='Tycho-Extra']"/>
131115
</workingSet>
132116
<workingSet
133-
name="TychoExtras">
117+
name="Tycho-Extra">
134118
<predicate
135-
xsi:type="predicates:AndPredicate">
136-
<operand
137-
xsi:type="predicates:RepositoryPredicate"
138-
project="tycho"/>
139-
<operand
140-
xsi:type="predicates:LocationPredicate"
141-
pattern=".*tycho-extras.*"/>
142-
</predicate>
119+
xsi:type="predicates:LocationPredicate"
120+
pattern=".*tycho-extras.*"/>
143121
</workingSet>
144-
<description>The dynamic working sets for ${scope.project.label}</description>
122+
</setupTask>
123+
<setupTask
124+
xsi:type="setup:CompoundTask"
125+
name="Maven Project Import">
126+
<setupTask
127+
xsi:type="maven:MavenImportTask">
128+
<sourceLocator
129+
rootFolder="${git.cloneTycho.location}/tycho-bundles/tycho-bundles-target"
130+
locateNestedProjects="true"/>
131+
<description>Import Target Platform Project</description>
132+
</setupTask>
133+
<setupTask
134+
xsi:type="maven:MavenImportTask"
135+
id="TychoProjectImport"
136+
projectNameTemplate="">
137+
<sourceLocator
138+
rootFolder="${git.cloneTycho.location}"/>
139+
<description>Import the root project</description>
140+
</setupTask>
141+
<setupTask
142+
xsi:type="maven:MavenImportTask"
143+
id="TychoProjectImport"
144+
projectNameTemplate="">
145+
<sourceLocator
146+
rootFolder="${git.cloneTycho.location}/sisu-equinox"
147+
locateNestedProjects="true"/>
148+
<description>Import project</description>
149+
</setupTask>
150+
<setupTask
151+
xsi:type="maven:MavenImportTask"
152+
id="TychoProjectImport"
153+
projectNameTemplate="">
154+
<sourceLocator
155+
rootFolder="${git.cloneTycho.location}/target-platform-configuration"/>
156+
<description>Import Maven Project</description>
157+
</setupTask>
158+
<setupTask
159+
xsi:type="maven:MavenImportTask"
160+
id="TychoProjectImport"
161+
projectNameTemplate="">
162+
<sourceLocator
163+
rootFolder="${git.cloneTycho.location}/tycho-artifactcomparator"/>
164+
<description>Import Maven Project</description>
165+
</setupTask>
166+
<setupTask
167+
xsi:type="maven:MavenImportTask"
168+
id="TychoProjectImport"
169+
projectNameTemplate="">
170+
<sourceLocator
171+
rootFolder="${git.cloneTycho.location}/tycho-bundles"
172+
locateNestedProjects="true"/>
173+
<description>Import Maven Project</description>
174+
</setupTask>
175+
<setupTask
176+
xsi:type="maven:MavenImportTask"
177+
id="TychoProjectImport"
178+
projectNameTemplate="">
179+
<sourceLocator
180+
rootFolder="${git.cloneTycho.location}/tycho-compiler-jdt"/>
181+
<description>Import Maven Project</description>
182+
</setupTask>
183+
<setupTask
184+
xsi:type="maven:MavenImportTask"
185+
id="TychoProjectImport"
186+
projectNameTemplate="">
187+
<sourceLocator
188+
rootFolder="${git.cloneTycho.location}/tycho-compiler-plugin"/>
189+
<description>Import Maven Project</description>
190+
</setupTask>
191+
<setupTask
192+
xsi:type="maven:MavenImportTask"
193+
id="TychoProjectImport"
194+
projectNameTemplate="">
195+
<sourceLocator
196+
rootFolder="${git.cloneTycho.location}/tycho-core"/>
197+
<description>Import Maven Project</description>
198+
</setupTask>
199+
<setupTask
200+
xsi:type="maven:MavenImportTask"
201+
id="TychoProjectImport"
202+
projectNameTemplate="">
203+
<sourceLocator
204+
rootFolder="${git.cloneTycho.location}/tycho-embedder-api"/>
205+
<description>Import Maven Project</description>
206+
</setupTask>
207+
<setupTask
208+
xsi:type="maven:MavenImportTask"
209+
id="TychoProjectImport"
210+
projectNameTemplate="">
211+
<sourceLocator
212+
rootFolder="${git.cloneTycho.location}/tycho-extras"
213+
locateNestedProjects="true"/>
214+
<description>Import Maven Project</description>
215+
</setupTask>
216+
<setupTask
217+
xsi:type="maven:MavenImportTask"
218+
id="TychoProjectImport"
219+
projectNameTemplate="">
220+
<sourceLocator
221+
rootFolder="${git.cloneTycho.location}/tycho-lib-detector"/>
222+
<description>Import Maven Project</description>
223+
</setupTask>
224+
<setupTask
225+
xsi:type="maven:MavenImportTask"
226+
id="TychoProjectImport"
227+
projectNameTemplate="">
228+
<sourceLocator
229+
rootFolder="${git.cloneTycho.location}/tycho-maven-plugin"/>
230+
<description>Import Maven Project</description>
231+
</setupTask>
232+
<setupTask
233+
xsi:type="maven:MavenImportTask"
234+
id="TychoProjectImport"
235+
projectNameTemplate="">
236+
<sourceLocator
237+
rootFolder="${git.cloneTycho.location}/tycho-metadata-model"/>
238+
<description>Import Maven Project</description>
239+
</setupTask>
240+
<setupTask
241+
xsi:type="maven:MavenImportTask"
242+
id="TychoProjectImport"
243+
projectNameTemplate="">
244+
<sourceLocator
245+
rootFolder="${git.cloneTycho.location}/tycho-p2"
246+
locateNestedProjects="true"/>
247+
<description>Import Maven Project</description>
248+
</setupTask>
249+
<setupTask
250+
xsi:type="maven:MavenImportTask"
251+
id="TychoProjectImport"
252+
projectNameTemplate="">
253+
<sourceLocator
254+
rootFolder="${git.cloneTycho.location}/tycho-packaging-plugin"/>
255+
<description>Import Maven Project</description>
256+
</setupTask>
257+
<setupTask
258+
xsi:type="maven:MavenImportTask"
259+
id="TychoProjectImport"
260+
projectNameTemplate="">
261+
<sourceLocator
262+
rootFolder="${git.cloneTycho.location}/tycho-pomgenerator-plugin"/>
263+
<description>Import Maven Project</description>
264+
</setupTask>
265+
<setupTask
266+
xsi:type="maven:MavenImportTask"
267+
id="TychoProjectImport"
268+
projectNameTemplate="">
269+
<sourceLocator
270+
rootFolder="${git.cloneTycho.location}/tycho-release"
271+
locateNestedProjects="true"/>
272+
<description>Import Maven Project</description>
273+
</setupTask>
274+
<setupTask
275+
xsi:type="maven:MavenImportTask"
276+
id="TychoProjectImport"
277+
projectNameTemplate="">
278+
<sourceLocator
279+
rootFolder="${git.cloneTycho.location}/tycho-releng"/>
280+
<description>Import Maven Project</description>
281+
</setupTask>
282+
<setupTask
283+
xsi:type="maven:MavenImportTask"
284+
id="TychoProjectImport"
285+
projectNameTemplate="">
286+
<sourceLocator
287+
rootFolder="${git.cloneTycho.location}/tycho-source-plugin"/>
288+
<description>Import Maven Project</description>
289+
</setupTask>
290+
<setupTask
291+
xsi:type="maven:MavenImportTask"
292+
id="TychoProjectImport"
293+
projectNameTemplate="">
294+
<sourceLocator
295+
rootFolder="${git.cloneTycho.location}/tycho-surefire"
296+
locateNestedProjects="true"/>
297+
<description>Import Maven Project</description>
298+
</setupTask>
299+
<setupTask
300+
xsi:type="maven:MavenImportTask"
301+
id="TychoProjectImport"
302+
projectNameTemplate="">
303+
<sourceLocator
304+
rootFolder="${git.cloneTycho.location}/tycho-testing-harness"/>
305+
<description>Import Maven Project</description>
306+
</setupTask>
307+
<description>Maven Project Import</description>
145308
</setupTask>
146309
<setupTask
147310
xsi:type="pde:TargetPlatformTask"
148-
name="Target platform for Tycho's bundles"/>
311+
name="Target platform for Tycho's bundles">
312+
<description>Set Tycho Target Platform</description>
313+
</setupTask>
314+
<setupTask
315+
xsi:type="projects:ProjectsBuildTask"
316+
refresh="true">
317+
<description>Build Projects</description>
318+
</setupTask>
149319
<stream name="master"
150320
label="master">
151321
<description>Tycho Master</description>

0 commit comments

Comments
 (0)