Bug 375782 - postingDirectory properties are confusing
Summary: postingDirectory properties are confusing
Status: RESOLVED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: Releng (show other bugs)
Version: 4.2   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: 4.2 M7   Edit
Assignee: David Williams CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 355430
  Show dependency tree
 
Reported: 2012-03-31 13:13 EDT by David Williams CLA
Modified: 2012-04-25 16:00 EDT (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description David Williams CLA 2012-03-31 13:13:53 EDT
The buildAll.xml file sets some "postingDirectories" as 

<!--default location for build output, parent to ${buildLabel}-->
<property name="postingDirectory" value="${buildDirectory}" />
<property name="equinoxPostingDirectory" value="${postingDirectory}/../../equinox/drops" />

I assume "postingDirectory" is what will eventually look like and be copied to ".../eclipse/downloads/drops"

The equinox one actually "ends up" seeming in the right place to me, but would be better expressed, IMHO, as 

<property name="equinoxPostingDirectory" value="${buildDirectory}/../../../equinox/drops" />

(that is, not "relative" to eclipse posting directory). 

With the current (temporary, test) values, for equinox, there tends up being several "buildLabel" directories under 
/shared/eclipse/e4/dwtest/eclipse4/equinox/drops


Similarly, I _think_ the "eclipse" postingDirectory should be

<property name="postingDirectory" value="${buildDirectory}/../../../eclipse/downloads/drops4" />
or similar. 

But, I'm not _exactly_ sure that these are for. 

There seems to be two "build label" directories currently created for "eclipse" ... unclear if they should be one? Or if one somehow feed the other? 

But currently, again with our temporary, test directory values, some "build label" directories end up under

/shared/eclipse/e4/dwtest/eclipse4/build/supportDir

along with the builders and "buildDirectory" named 'src': 

e4Build@build:/shared/eclipse/e4/dwtest/eclipse4/build/supportDir> ls -1
I20120331-0042
I20120331-0047
I20120331-0050
I20120331-0228
org.eclipse.releng.basebuilder
org.eclipse.releng.eclipsebuilder
src
updates

FWIW, the "updates" directory there looks normal, such as

e4Build@build:/shared/eclipse/e4/dwtest/eclipse4/build/supportDir> ls -1 updates/4.2-I-builds/
compositeArtifacts.jar
compositeContent.jar
I20120331-0050

And, when a build succeeds, the "buildLabel" directories there look like normal drop directories ... to list a subset: 

e4Build@build:/shared/eclipse/e4/dwtest/eclipse4/build/supportDir> ls -1 I20120331-0050/eclipse-SDK-I20120331-0050-*
I20120331-0050/eclipse-SDK-I20120331-0050-aix-gtk-ppc64.zip
I20120331-0050/eclipse-SDK-I20120331-0050-aix-gtk-ppc.zip
I20120331-0050/eclipse-SDK-I20120331-0050-hpux-gtk-ia64_32.zip
I20120331-0050/eclipse-SDK-I20120331-0050-linux-gtk-ppc64.tar.gz
I20120331-0050/eclipse-SDK-I20120331-0050-linux-gtk-s390.tar.gz
I20120331-0050/eclipse-SDK-I20120331-0050-linux-gtk-s390x.tar.gz
I20120331-0050/eclipse-SDK-I20120331-0050-linux-gtk.tar.gz
I20120331-0050/eclipse-SDK-I20120331-0050-linux-gtk-x86_64.tar.gz
I20120331-0050/eclipse-SDK-I20120331-0050-macosx-cocoa.tar.gz
I20120331-0050/eclipse-SDK-I20120331-0050-macosx-cocoa-x86_64.tar.gz
I20120331-0050/eclipse-SDK-I20120331-0050-solaris-gtk-x86.zip
I20120331-0050/eclipse-SDK-I20120331-0050-solaris-gtk.zip
I20120331-0050/eclipse-SDK-I20120331-0050-win32-x86_64.zip
I20120331-0050/eclipse-SDK-I20120331-0050-win32.zip

But, there are also "buildLabel" directories under "src" (the buildDirectory)

e4Build@build:/shared/eclipse/e4/dwtest/eclipse4/build/supportDir/src> ll -1 I20120331-0050/
total 254900
drwxrwxr-x+ 3 e4Build users      4096 2012-03-31 01:04 compilelogs
-rw-rw-r--+ 1 e4Build users 260741875 2012-03-31 01:15 eclipse-master-I20120331-0050.zip
drwxrwxr-x+ 3 e4Build users      4096 2012-03-31 01:53 p2launchertmp
drwxrwxr-x+ 3 e4Build users      4096 2012-03-31 01:30 p2temp

I'm fairly sure these are required "temporary working files" though not sure why they have to be in "buildLabel" sort of dirctory, since as far as I know, the whole "buildDirectory" (...supportDir/src/*) should be "wiped clean" before each build. 

Again, just documenting questions as I go ... I doubt anything is "wrong" ... but, figured I'd point out the confusing aspects in case anyone can easily shed light on it.
Comment 1 David Williams CLA 2012-04-11 03:11:16 EDT
I've made these less confusing, by redefining them :) 

Essentially mimicking the "final structure" on downloads.eclipse.org. 



postingDirectory=${siteDir}/eclipse/downloads/drops4
mkdir -p $postingDirectory
echo "postingDirectory: $postingDirectory"
equinoxPostingDirectory=${siteDir}/equinox
mkdir -p $equinoxPostingDirectory
echo "equinoxPostingDirectory: $equinoxPostingDirectory"
localUpdateSite=${siteDir}/updates
mkdir -p $localUpdateSite 
echo "localUpdateSite: $localUpdateSite"

where "siteDir" is currently defined "at the top" of our specific build area on build.eclipse.org. 

writableBuildRoot=/shared/eclipse/eclipse4
export siteDir=$writableBuildRoot/siteDir

In theory, if/when this got running in a smooth error resistant way, we could probably define "siteDir" directly to "downloads" server file system. 

But, for now, we'll have a separate step to "update" the files once relatively sure the build went ok.