Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 332768

Summary: Git FetchFactory refer missing target in retrieve.xml
Product: [Technology] EGit Reporter: Nikolas Falco <nfalco79>
Component: CoreAssignee: Project Inbox <egit.core-inbox>
Status: CLOSED FIXED QA Contact:
Severity: major    
Priority: P3 CC: aniefer, caniszczyk, nfalco79, pwebster, robin
Version: 0.12   
Target Milestone: ---   
Hardware: PC   
OS: Windows 7   
Whiteboard:
Attachments:
Description Flags
files generated by git FetchFactory none

Description Nikolas Falco CLA 2010-12-16 12:06:58 EST
Build Identifier: 0.10.0.201011091645

I'm using new Git FetchFactory 0.10.0.201011091645 with eclipse 3.6.1 R1
The retrieve.xml file lacks of specific git targets.

An horrible patch is add to the end of generateRetrieveFilesCall()
// FIXME:
script.printTargetEnd(); // close main target opened by the caller FetchScriptGenerator.retrieveFeature()
addTargets(script); // add all git specific targets
script.printTargetDeclaration("foo", null, null, null, null); // open a new target that will be close by the caller FetchScriptGenerator.retrieveFeature()


Reproducible: Always
Comment 1 Nikolas Falco CLA 2010-12-16 12:13:55 EST
Created attachment 185347 [details]
files generated by git FetchFactory
Comment 2 Chris Aniszczyk CLA 2010-12-16 12:21:37 EST
Thanks for the bug.

We plan on officially shipping the fetch factory in 0.11 and appreciate reports and any patches from the community :)
Comment 3 Andrew Niefer CLA 2011-01-27 15:59:10 EST
Nikolas, there were a few problems in PDE/Build that needed to be fixed for the git fetch factory to work properly.
See bug 327607, and also bug 328059.

You should try using a recent version of pde.build in your base builder.
3.7M5 is due out this week, the most recent M5 candidate build is http://download.eclipse.org/eclipse/downloads/drops/I20110127-1100/index.php
Comment 4 Nikolas Falco CLA 2011-03-30 13:00:35 EDT
I update our headless build system with eclipse 3.7M6

Now factory work without patch but i found two scmCache directories.
Analyzing problem for a lot of time, i found the problem in the genericTargets.xml at fetchElement target

the call to eclipse.fetch task, generate a temporary retrieve.xml file (hard to copy on running) that start with
<project name="RetrieveFeature" default="main" basedir=".">
...
in this case basedir is always ${buildDirectory} because retrieve.xml is generate into ${buildDirectory} without inherit basedir (it was forced as attribute into project element)

After task ended invoke the fetch_${topLevelElementId}.xml script file that call all other fetch scripts.
In this case files are start all with
<project name="FetchScript" default="fetch">
and basedir was inherit and can be different from retrieve.xml.

In my case:
- first one:
fetchCacheLocation=${basedir}/scmCache --> /home/builder/build-system/sources (parent file of retrieve.xml) inherith from natural mechanism ant property
- second one:
fetchCacheLocation=${basedir}/scmCache --> parent of ${buildDirectory} --> /home/builder/build-system

:\

I now that is possible define fetchCacheLocation but is not documented at the moment.
Better if is the same.

Sorry for english :)
Comment 5 Robin Stocker CLA 2013-09-27 12:09:53 EDT
Please reopen if this is still a problem.