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

Bug 328837

Summary: change p2.map to fetch ECF bundles via p2IU vs get GET
Product: [Eclipse Project] Platform Reporter: Kim Moir <kim.moir>
Component: RelengAssignee: Kim Moir <kim.moir>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: P3 CC: bugs.eclipse.org, pwebster, slewis
Version: 3.7   
Target Milestone: 3.7 M4   
Hardware: PC   
OS: Windows XP   
Whiteboard:
Attachments:
Description Flags
patch none

Description Kim Moir CLA 2010-10-27 10:57:58 EDT
The ECF team has requested that we fetch their bundles from their repo via p2IU instead of GET.
Comment 1 Markus Kuppe CLA 2010-10-27 14:36:08 EDT
Hi Kim,

WRT what you sent to p2-dev ...

> Even with this change, we still require a stable ECF repository URL.
> Moving the ECF repository that was consumed in previous releases means
> that our map files for this release are no longer valid. In the
> Eclipse/Equinox project, we archive our old release directories (zips
> etc)  but retain the p2 release repositories and the associated URL.

We keep our official releases around for at least a year [0] and see no problem in keeping them even longer. Once platform starts consuming ECF's official releases there won't be any problems (btw. I would be happy to discuss p2/ECF build integration over at ESE next week).

However it makes no sense to mirror the platform integration folder across all mirrors if it's only consumed by platform. Thus it has been moved to archive.eclipse.org.

[0] http://rsync.osuosl.org/pub/eclipse/rt/ecf/
Comment 2 Kim Moir CLA 2010-10-28 11:11:44 EDT
Created attachment 181958 [details]
patch
Comment 3 Kim Moir CLA 2010-10-28 13:25:22 EDT
Markus, unfortunately, I won't be at ESE :-)

Here's the issue

We are a level 0 project on the release train
http://wiki.eclipse.org/Helios/Participating_Projects
ECF is a level +2 project

We consume ECF.  However, ECF's final release is not available when we have to have our final release ready.  There are two solutions to this problem.

1) ECF becomes a -1 level project so your final bundles are available when we need to run our final simultaneous release build.
2) There is separate repo for platform builds to consume for their final release.

Today, we have option (2).  

In bug 302877, the request is to specify requires instead of includes for the ECF bundles in the p2.user.ui feature.  This is up to the p2 team to implement.  If this was the case, you would still be faced with the issue where the Platform team would have different different ECF bundles in their release zips and repo than those in the final ECF release.  Looking at the Helios repo, it appears that the ECF bundles are there, but the ones consumed by the platform reside in the platform repo only.
Comment 4 Markus Kuppe CLA 2010-10-28 23:35:00 EDT
(In reply to comment #3)
> We are a level 0 project on the release train
> http://wiki.eclipse.org/Helios/Participating_Projects
> ECF is a level +2 project
> 
> We consume ECF.  However, ECF's final release is not available when we have to
> have our final release ready.  There are two solutions to this problem.
> 
> 1) ECF becomes a -1 level project so your final bundles are available when we
> need to run our final simultaneous release build.
> 2) There is separate repo for platform builds to consume for their final
> release.
> 
> Today, we have option (2).  

#2 implicitly makes half of ECF (core and filetransfer) a -1 project that is even based on an unofficial "equinox base" build.

IMO the only order that does not rely on unofficial builds is:

-2 equinox base
-1 ecf filetransfer
0 equinox p2 (re-consume bundle from -2 equinox base build as binaries)
...
2 rest of ecf (re-consuming bundles from -1 ecf filetransfer as binaries)

Btw. Scott, does filetransfer depend on any Orbit bundles?
Comment 5 Scott Lewis CLA 2010-10-28 23:46:25 EDT
(In reply to comment #4)

> 
> Btw. Scott, does filetransfer depend on any Orbit bundles?

Yes...apache httpclient 3.1.0, which also depends upon apache codec and apache logging (can't remember which versions of those atm).
Comment 6 Kim Moir CLA 2010-11-01 13:41:02 EDT
Test build was successful.