automating some update scripts
diff --git a/org.eclipse.wtp.releng.webupdatesite/build-home/cleanMirror.sh b/org.eclipse.wtp.releng.webupdatesite/build-home/cleanMirror.sh
new file mode 100644
index 0000000..3224b3b
--- /dev/null
+++ b/org.eclipse.wtp.releng.webupdatesite/build-home/cleanMirror.sh
@@ -0,0 +1,27 @@
+
+dropName=$1
+
+if [ "$dropName" !=  "" ]
+then
+
+eclipseLocation=$HOME/eclipse-ppc-rc7
+
+# from declared directory
+updateSite=file://$HOME/downloads/webtools/committers/drops/$1/updateSite
+# to
+localUpdateSitePath=$HOME/downloads/webtools/testUpdates
+
+ant  -f mirrorMilestones.xml -DeclipseLocation=$eclipseLocation -DupdateSite=$updateSite -DlocalUpdateSitePath=$localUpdateSitePath
+
+# merge authored site.xml files with the most recent auto generated one
+# $HOME/org.eclipse.callisto.tools/build-home/runUpdateSiteXmlFiles.sh
+
+ant  -f createPack200s.xml    -Declipse.home=$eclipseLocation -DupdateSite=$localUpdateSitePath
+ant  -f createDigests.xml      -Declipse.home=$eclipseLocation -DupdateSite=$localUpdateSitePath
+
+
+else
+     echo "   Usage: $0 <dropName> (where dropName is, for example, 200606231530)"
+
+fi
+
diff --git a/org.eclipse.wtp.releng.webupdatesite/build-home/copyToRelease-SiteFiles.sh b/org.eclipse.wtp.releng.webupdatesite/build-home/copyToRelease-SiteFiles.sh
new file mode 100644
index 0000000..3b82f00
--- /dev/null
+++ b/org.eclipse.wtp.releng.webupdatesite/build-home/copyToRelease-SiteFiles.sh
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+# script to copy site files 
+
+fromDir=$HOME/downloads/webtools/testUpdates
+toDir=$HOME/downloads/webtools/milestones
+
+cp -f -p -r -v --update $fromDir/*html --target-directory=$toDir/
+cp -f -p -r -v --update $fromDir/*.gif  --target-directory=$toDir/
+cp -f -p -r -v --update $fromDir/web  --target-directory=$toDir/
+cp -f -p -r -v --update $fromDir/*.xml --target-directory=$toDir/
+
+perl -pi -e 's/webtools\/testUpdates/webtools\/milestones/g' ${toDir}/index.html
+perl -pi -e 's/webtools\/testUpdates/webtools\/milestones/g' ${toDir}/site.xml
+perl -pi -e 's/webtools\/testUpdates/webtools\/milestones/g' ${toDir}/site-byProject.xml
+
+# important: make sure digest is updated same time as site.xml's
+cp -f -p -r -v --update $fromDir/digest.zip --target-directory=$toDir/
+
+
+
+
diff --git a/org.eclipse.wtp.releng.webupdatesite/build-home/copyToRelease-code.sh b/org.eclipse.wtp.releng.webupdatesite/build-home/copyToRelease-code.sh
new file mode 100644
index 0000000..206f2bb
--- /dev/null
+++ b/org.eclipse.wtp.releng.webupdatesite/build-home/copyToRelease-code.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+# script to copy update jars from their staging area to the releases area
+
+fromDir=$HOME/downloads/webtools/testUpdates
+toDir=$HOME/downloads/webtools/milestones
+
+cp -f -p -r -v --update $fromDir/features --target-directory=$toDir/
+cp -f -p -r -v --update $fromDir/plugins  --target-directory=$toDir/
+
diff --git a/org.eclipse.wtp.releng.webupdatesite/build-home/createDigests.xml b/org.eclipse.wtp.releng.webupdatesite/build-home/createDigests.xml
new file mode 100644
index 0000000..5e28781
--- /dev/null
+++ b/org.eclipse.wtp.releng.webupdatesite/build-home/createDigests.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project basedir="." default="createDigest">
+
+    <target name="createDigest" depends="checkArgs">
+
+        <property name="java15-home"
+                  value="/home/data/users/david_williams/ibm-java2-ppc-50/jre" />
+        <property name="buildDirectory"
+                  value="${basedir}" />
+
+        <java jar="${eclipse.home}/startup.jar"
+              fork="true"
+              jvm="${java15-home}/bin/java"
+              failonerror="true"
+              maxmemory="128m"
+              dir="${buildDirectory}">
+            <arg line="-application org.eclipse.update.core.siteOptimizer" />
+            <arg line="-digestBuilder -digestOutputDir=${updateSite} -siteXML=${updateSite}/site.xml" />
+        </java>
+
+    </target>
+
+    <target name="checkArgs">
+        <fail message="eclipse.home and updateSite must be set.">
+            <condition>
+                <and>
+                    <not>
+                        <isset property="eclipse.home" />
+                    </not>
+                    <not>
+                        <isset property="updateSite" />
+                    </not>
+                </and>
+            </condition>
+        </fail>
+    </target>
+
+
+</project>
diff --git a/org.eclipse.wtp.releng.webupdatesite/build-home/createPack200s.xml b/org.eclipse.wtp.releng.webupdatesite/build-home/createPack200s.xml
new file mode 100644
index 0000000..411496f
--- /dev/null
+++ b/org.eclipse.wtp.releng.webupdatesite/build-home/createPack200s.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project basedir="." default="createPack200s">
+
+    <target name="createPack200s">
+ 
+        <property name="java15-home"
+                  value="/home/data/users/david_williams/ibm-java2-ppc-50/jre" />
+
+        <property name="buildDirectory"
+                  value="${basedir}" />
+
+        <java jar="${eclipse.home}/startup.jar"
+              fork="true"
+              jvm="${java15-home}/bin/java"
+              failonerror="true"
+              maxmemory="1024m"
+              dir="${buildDirectory}">
+            <arg line="-application org.eclipse.update.core.siteOptimizer" />
+            <arg line="-jarProcessor -verbose -outputDir ${updateSite} -pack ${updateSite}" />
+        </java>
+    </target>
+    
+    <target name="checkArgs">
+        <fail message="eclipse.home and updateSite must be set.">
+            <condition>
+                <and>
+                    <not>
+                        <isset property="eclipse.home" />
+                    </not>
+                    <not>
+                        <isset property="updateSite" />
+                    </not>
+                </and>
+            </condition>
+        </fail>
+    </target>
+
+
+</project>
diff --git a/org.eclipse.wtp.releng.webupdatesite/build-home/env.properties b/org.eclipse.wtp.releng.webupdatesite/build-home/env.properties
new file mode 100644
index 0000000..77b8f64
--- /dev/null
+++ b/org.eclipse.wtp.releng.webupdatesite/build-home/env.properties
@@ -0,0 +1,8 @@
+# doesn't work as desired ... specify on command line which invokes ant
+
+# directory where startup.jar is
+eclipseInstallLocation=/home/data/users/david_williams
+
+# top of update site directory -- normally a peer of build-home
+# peer doesn't work for now ... assumed to be ${basedir}/localUpdateSitePath
+localUpdateSitePath=tempout
diff --git a/org.eclipse.wtp.releng.webupdatesite/build-home/features-jpa.xml b/org.eclipse.wtp.releng.webupdatesite/build-home/features-jpa.xml
new file mode 100644
index 0000000..9229644
--- /dev/null
+++ b/org.eclipse.wtp.releng.webupdatesite/build-home/features-jpa.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project name="update" default="update">
+    <target name="update">
+
+        <property name="updateSite"
+                  value="file://${user.home}/downloads/webtools/milestones/site.xml" />
+        <echo message="   pulling update jars from ${updateSite}" />
+        
+           
+        
+        
+        <ant antfile="updateMirrorProject.xml">
+            <property name="featureId"
+                      value="org.eclipse.wst" />
+            <property name="version"
+                      value="1.5.0.v200606092300-U4T922yjJKEArSO" />
+        </ant>
+        <ant antfile="updateMirrorProject.xml">
+            <property name="featureId"
+                      value="org.eclipse.jst" />
+            <property name="version"
+                      value="1.5.0.v200606092300-kW-O_ysAVGQn0Pl" />
+        </ant>
+
+        <!-- 
+        technically, seems Xerces should not have to be listed here, 
+        since is mirrored by above ... but currently is required to get all other 
+        files (e.g. site.xml files) to be correctly updated). 
+        
+        Doesn't hurt, either, to have the redundancy, since other projects 
+        are dependent on it, so less likely to be forgotten and accidently 
+        removed in the future. 
+        -->
+        <ant antfile="updateMirrorProject.xml">
+            <property name="featureId"
+                      value="org.apache.commons_logging.feature" />
+            <property name="version"
+                      value="1.0.4.v200606152055--08422828353873" />
+        </ant>
+        <ant antfile="updateMirrorProject.xml">
+            <property name="featureId"
+                      value="org.apache.jakarta_log4j.feature" />
+            <property name="version"
+                      value="1.2.8.v200605300321--08422828353873" />
+        </ant>
+        <ant antfile="updateMirrorProject.xml">
+            <property name="featureId"
+                      value="org.apache.xerces.feature" />
+            <property name="version"
+                      value="2.8.0.v200605151647--08422828353873" />
+        </ant>
+    </target>
+</project>
diff --git a/org.eclipse.wtp.releng.webupdatesite/build-home/features-jsf.xml b/org.eclipse.wtp.releng.webupdatesite/build-home/features-jsf.xml
new file mode 100644
index 0000000..9229644
--- /dev/null
+++ b/org.eclipse.wtp.releng.webupdatesite/build-home/features-jsf.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project name="update" default="update">
+    <target name="update">
+
+        <property name="updateSite"
+                  value="file://${user.home}/downloads/webtools/milestones/site.xml" />
+        <echo message="   pulling update jars from ${updateSite}" />
+        
+           
+        
+        
+        <ant antfile="updateMirrorProject.xml">
+            <property name="featureId"
+                      value="org.eclipse.wst" />
+            <property name="version"
+                      value="1.5.0.v200606092300-U4T922yjJKEArSO" />
+        </ant>
+        <ant antfile="updateMirrorProject.xml">
+            <property name="featureId"
+                      value="org.eclipse.jst" />
+            <property name="version"
+                      value="1.5.0.v200606092300-kW-O_ysAVGQn0Pl" />
+        </ant>
+
+        <!-- 
+        technically, seems Xerces should not have to be listed here, 
+        since is mirrored by above ... but currently is required to get all other 
+        files (e.g. site.xml files) to be correctly updated). 
+        
+        Doesn't hurt, either, to have the redundancy, since other projects 
+        are dependent on it, so less likely to be forgotten and accidently 
+        removed in the future. 
+        -->
+        <ant antfile="updateMirrorProject.xml">
+            <property name="featureId"
+                      value="org.apache.commons_logging.feature" />
+            <property name="version"
+                      value="1.0.4.v200606152055--08422828353873" />
+        </ant>
+        <ant antfile="updateMirrorProject.xml">
+            <property name="featureId"
+                      value="org.apache.jakarta_log4j.feature" />
+            <property name="version"
+                      value="1.2.8.v200605300321--08422828353873" />
+        </ant>
+        <ant antfile="updateMirrorProject.xml">
+            <property name="featureId"
+                      value="org.apache.xerces.feature" />
+            <property name="version"
+                      value="2.8.0.v200605151647--08422828353873" />
+        </ant>
+    </target>
+</project>
diff --git a/org.eclipse.wtp.releng.webupdatesite/build-home/features-wtp.xml b/org.eclipse.wtp.releng.webupdatesite/build-home/features-wtp.xml
new file mode 100644
index 0000000..9229644
--- /dev/null
+++ b/org.eclipse.wtp.releng.webupdatesite/build-home/features-wtp.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project name="update" default="update">
+    <target name="update">
+
+        <property name="updateSite"
+                  value="file://${user.home}/downloads/webtools/milestones/site.xml" />
+        <echo message="   pulling update jars from ${updateSite}" />
+        
+           
+        
+        
+        <ant antfile="updateMirrorProject.xml">
+            <property name="featureId"
+                      value="org.eclipse.wst" />
+            <property name="version"
+                      value="1.5.0.v200606092300-U4T922yjJKEArSO" />
+        </ant>
+        <ant antfile="updateMirrorProject.xml">
+            <property name="featureId"
+                      value="org.eclipse.jst" />
+            <property name="version"
+                      value="1.5.0.v200606092300-kW-O_ysAVGQn0Pl" />
+        </ant>
+
+        <!-- 
+        technically, seems Xerces should not have to be listed here, 
+        since is mirrored by above ... but currently is required to get all other 
+        files (e.g. site.xml files) to be correctly updated). 
+        
+        Doesn't hurt, either, to have the redundancy, since other projects 
+        are dependent on it, so less likely to be forgotten and accidently 
+        removed in the future. 
+        -->
+        <ant antfile="updateMirrorProject.xml">
+            <property name="featureId"
+                      value="org.apache.commons_logging.feature" />
+            <property name="version"
+                      value="1.0.4.v200606152055--08422828353873" />
+        </ant>
+        <ant antfile="updateMirrorProject.xml">
+            <property name="featureId"
+                      value="org.apache.jakarta_log4j.feature" />
+            <property name="version"
+                      value="1.2.8.v200605300321--08422828353873" />
+        </ant>
+        <ant antfile="updateMirrorProject.xml">
+            <property name="featureId"
+                      value="org.apache.xerces.feature" />
+            <property name="version"
+                      value="2.8.0.v200605151647--08422828353873" />
+        </ant>
+    </target>
+</project>
diff --git a/org.eclipse.wtp.releng.webupdatesite/build-home/generateMirrorTags.jar b/org.eclipse.wtp.releng.webupdatesite/build-home/generateMirrorTags.jar
new file mode 100644
index 0000000..753abe4
--- /dev/null
+++ b/org.eclipse.wtp.releng.webupdatesite/build-home/generateMirrorTags.jar
Binary files differ
diff --git a/org.eclipse.wtp.releng.webupdatesite/build-home/getUpdateToolsFromCVS.sh b/org.eclipse.wtp.releng.webupdatesite/build-home/getUpdateToolsFromCVS.sh
new file mode 100644
index 0000000..48ef2ff
--- /dev/null
+++ b/org.eclipse.wtp.releng.webupdatesite/build-home/getUpdateToolsFromCVS.sh
@@ -0,0 +1,33 @@
+
+# This script should be "copied up" and ran from a
+# directory "above" the main working directories of
+# org.eclipse.callisto.updatesite, and
+# org.eclipse.callisto.tools
+# this is typically the users $HOME directory
+
+updateToolsDir=org.eclipse.wtp.releng.webupdatesite
+
+echo "   "
+echo "   Removing old $updateToolsDir and exporting fresh HEAD versions." 
+echo "   "
+
+rm -fr $updateToolsDir
+echo "   "
+
+# ISSUE: we should move away from using 'head' version
+# Note: we can use "local host" since we are running on the same cluser as the cvs server
+# otherwise, if running remotely, localhos should be changed to 'dev.eclpise.org'
+cvs -Q -f -d :pserver:anonymous@localhost:/cvsroot/webtools export -r HEAD $updateToolsDir
+
+chmod -R +x $updateToolsDir/*.sh
+
+echo "    for complete refresh, use something similar to following"
+echo " " 
+echo "    cd $updateToolsDir/build-home/"
+echo "    nohup ./runUpdateAllProjects.sh -clean | tee out.txt"
+echo "  "
+echo "    When complete, be sure to inspect or at least grep the out.txt file for anomilies, e.g. "
+echo "        grep failed     out.txt"
+echo "        grep error      out.txt"
+echo "        grep exception  out.txt"
+echo " "
\ No newline at end of file
diff --git a/org.eclipse.wtp.releng.webupdatesite/build-home/indexer.xml b/org.eclipse.wtp.releng.webupdatesite/build-home/indexer.xml
new file mode 100644
index 0000000..9de9484
--- /dev/null
+++ b/org.eclipse.wtp.releng.webupdatesite/build-home/indexer.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project name="index" default="index" basedir=".">
+
+    <!--
+		OSGi Indexer. See 
+		http://bundles.osgi.org/bindex.php
+	-->
+    <target name="init">
+        <property file="env.properties" />
+    </target>
+
+    <target name="index" depends="init">
+        
+        <echo message="Indexing ${localUpdateSitePath}/plugins/*.jar" />
+        
+        <java jar="bindex.jar"
+              fork="true"
+              failonerror="false">
+            <arg value="-t" />
+            <arg value="http://download.eclipse.org/callisto/releases/plugins/%f " />
+            <arg value="-q" />
+            <arg value="${localUpdateSitePath}/plugins/*.jar" />
+        </java>
+    </target>
+</project>
diff --git a/org.eclipse.wtp.releng.webupdatesite/build-home/init.xml b/org.eclipse.wtp.releng.webupdatesite/build-home/init.xml
new file mode 100644
index 0000000..fd931c8
--- /dev/null
+++ b/org.eclipse.wtp.releng.webupdatesite/build-home/init.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project
+	name="init"
+	default="init"
+	basedir=".">
+
+	<target name="init">
+		<echo message="Initilialized" />
+		<property
+			name="initialized"
+			value="true" />
+
+		<property file="env.properties" />
+
+		<property
+			name="eclipseLocation"
+			value="${eclipseInstallLocation}/eclipse" />
+
+		<echo message="eclipseLocation: ${eclipseLocation}" />
+		<echo message="localUpdateSitePath: ${localUpdateSitePath}" />
+
+		<!-- mkdir, just for first time, doesn't hurt to call each time -->
+		<mkdir dir="${localUpdateSitePath}" />
+
+		<!-- delete any previous build workspace. Only interesting thing it has is .metadata/.log -->
+	    <!-- since init runs each project, deletes too frequently 
+		<delete
+			dir="${basedir}/buildworkspace"
+			failonerror="false" />
+			-->
+	</target>
+</project>
diff --git a/org.eclipse.wtp.releng.webupdatesite/build-home/mirrorMilestones.xml b/org.eclipse.wtp.releng.webupdatesite/build-home/mirrorMilestones.xml
new file mode 100644
index 0000000..0344052
--- /dev/null
+++ b/org.eclipse.wtp.releng.webupdatesite/build-home/mirrorMilestones.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project name="update" default="update" basedir=".">
+    <!-- original example received from Richard Gronback from cross-project list (thanks Richard!) -->
+    <!-- see http://help.eclipse.org/help31/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/misc/update_standalone.html -->
+
+    <target name="init" unless="initialized">
+        <ant antfile="init.xml" />
+    </target>
+
+    <target name="update" depends="init">
+        <echo message="Mirroring wtp milestones site to reduced site" />
+        <java jar="${eclipseLocation}/startup.jar"
+              fork="true"
+              failonerror="false">
+            <jvmarg value="-DcontinueOnError=true" />
+            <arg value="-clean" />
+            <arg value="-nosplash" />
+            <arg value="-application" />
+            <arg value="org.eclipse.update.core.standaloneUpdate" />
+            <arg value="-data" />
+            <arg value="${basedir}/buildworkspace" />
+            <arg value="-debug" />
+            <arg value="-consolelog" />
+            <arg value="-command" />
+            <arg value="mirror" />
+            <arg value="-from" />
+            <arg value="${updateSite}" />
+            <arg value="-to" />
+            <arg value="${localUpdateSitePath}" />
+
+        </java>
+
+    </target>
+</project>
diff --git a/org.eclipse.wtp.releng.webupdatesite/build-home/runUpdateAllProjects.sh b/org.eclipse.wtp.releng.webupdatesite/build-home/runUpdateAllProjects.sh
new file mode 100644
index 0000000..68dd7c0
--- /dev/null
+++ b/org.eclipse.wtp.releng.webupdatesite/build-home/runUpdateAllProjects.sh
@@ -0,0 +1,40 @@
+#!/bin/sh
+
+# script to run update, setting properties, for all projects
+
+updateToolsDir=org.eclipse.wtp.releng.webupdatesite
+
+updateSite=$HOME/downloads/webtools/milestones
+ 
+eclipseLocation=$HOME/eclipse-ppc-rc7
+
+
+
+ if [ "$1" == "-clean" ] ; then
+
+	 echo "   Removing $updateSite/features/"
+	 rm -fr $updateSite/features/
+	
+	 echo "   Removing $updateSite/plugins/"
+	 rm -fr $updateSite/plugins/
+	
+	 echo "   Removing index and site xml files"
+	 rm -fr $updateSite/*
+	
+	 echo "   Updating index and web site files, but not site xml files (yet)"
+	    cp $HOME/$updateToolsDir/WebContent/index.html  $updateSite
+	    cp $HOME/$updateToolsDir/WebContent/*.jpg  $updateSite > /dev/null
+	    cp $HOME/$updateToolsDir/WebContent/*.gif  $updateSite > /dev/null
+	    cp -r $HOME/$updateToolsDir/WebContent/web $updateSite > /dev/null
+
+ fi
+
+
+ ant  -f updateMirrorAll.xml -DeclipseLocation=$eclipseLocation -DlocalUpdateSitePath=$updateSite
+
+ # merge authored site.xml files with the most recent auto generated one
+ ./runUpdateSiteXmlFiles.sh
+
+ ant  -f createPack200s.xml     -Declipse.home=$eclipseLocation -DupdateSite=$updateSite
+ ant  -f createDigests.xml      -Declipse.home=$eclipseLocation -DupdateSite=$updateSite
+
diff --git a/org.eclipse.wtp.releng.webupdatesite/build-home/runUpdateProjects.sh b/org.eclipse.wtp.releng.webupdatesite/build-home/runUpdateProjects.sh
new file mode 100644
index 0000000..2cb74c4
--- /dev/null
+++ b/org.eclipse.wtp.releng.webupdatesite/build-home/runUpdateProjects.sh
@@ -0,0 +1,20 @@
+#!/bin/sh
+
+# script to run update, setting properties, for an individual project
+
+ updateSite=$HOME/downloads/webtools/milestones
+
+ eclipseLocation=$HOME/eclipse-ppc-rc7
+
+
+project="$1"
+if [ "$project" !=  "" ]
+then
+
+     ant  -f features-$project.xml -DeclipseLocation=$eclipseLocation -DlocalUpdateSitePath=$updateSite -Dosgi.arch=ppc -Dosgi.clean -Dosgi.debug=true -Declipse.consoleLog=true -DcontinueOnError=true
+
+
+else
+     echo "   Usage: $0 <project> (where project is wtp, jsf, or jpa)"
+
+fi
diff --git a/org.eclipse.wtp.releng.webupdatesite/build-home/runUpdateSiteXmlFile.sh b/org.eclipse.wtp.releng.webupdatesite/build-home/runUpdateSiteXmlFile.sh
new file mode 100644
index 0000000..65ab9f8
--- /dev/null
+++ b/org.eclipse.wtp.releng.webupdatesite/build-home/runUpdateSiteXmlFile.sh
@@ -0,0 +1,17 @@
+#!/bin/sh
+
+# script to update site xml files, by merging new features from "mirror" command, with old "authored" content.
+
+main_name=$1
+
+in_authored=~/org.eclipse.callisto.updatesite/WebContent/$main_name
+# remember, this 'site.xml' is just the output of mirror command, when ran in context
+in_newFeatures=~/downloads/webtools/milestones/.site.xml
+
+# merges newFeautes in to authored, back in original locaion
+java -jar siteFileUpdater.jar $in_authored $in_newFeatures
+
+#copy to discovery site
+cp $in_authored  ~/downloads/webtools/milestones/$main_name
+
+
diff --git a/org.eclipse.wtp.releng.webupdatesite/build-home/runUpdateSiteXmlFiles.sh b/org.eclipse.wtp.releng.webupdatesite/build-home/runUpdateSiteXmlFiles.sh
new file mode 100644
index 0000000..b51097a
--- /dev/null
+++ b/org.eclipse.wtp.releng.webupdatesite/build-home/runUpdateSiteXmlFiles.sh
@@ -0,0 +1,13 @@
+# save away a clean version of this site file with all the latest version numbers
+
+updateToolsDir=org.eclipse.wtp.releng.webupdatesite
+
+updateSite=$HOME/downloads/webtools/milestones
+
+
+cp $HOME/$updateSite/site.xml ~/downloads/callisto/staging/.site.xml
+
+
+# merge authored site.xml with the autogenerated one
+$HOME/$updateToolsDir/build-home/runUpdateSiteXmlFile.sh site.xml
+
diff --git a/org.eclipse.wtp.releng.webupdatesite/build-home/siteFileUpdater.jar b/org.eclipse.wtp.releng.webupdatesite/build-home/siteFileUpdater.jar
new file mode 100644
index 0000000..b3813e3
--- /dev/null
+++ b/org.eclipse.wtp.releng.webupdatesite/build-home/siteFileUpdater.jar
Binary files differ
diff --git a/org.eclipse.wtp.releng.webupdatesite/build-home/updateMirrorAll.xml b/org.eclipse.wtp.releng.webupdatesite/build-home/updateMirrorAll.xml
new file mode 100644
index 0000000..6962aa0
--- /dev/null
+++ b/org.eclipse.wtp.releng.webupdatesite/build-home/updateMirrorAll.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project name="updatesite" default="all" basedir=".">
+
+    <target name="init">
+ 		<ant antfile="init.xml"/>
+    </target>
+
+    <target name="all" depends="init">
+        <ant antfile="features-wtp.xml" />
+        <ant antfile="features-jsf.xml" />
+        <ant antfile="features-jpa.xml" />
+        
+        <!-- make sure all can "read" (important for quicker http access, esp. when Eclipse.org overloaded) -->
+        <chmod verbose="true" perm="o+rx" type="both">
+            <fileset dir="${localUpdateSitePath}" />
+        </chmod>
+
+        <!-- needs work .. indexer doesn't work well from this ant script (needs paths fixed up)
+        <ant antfile="indexer.xml">
+            <property name="pluginJarPath"
+                      location="${localUpdateSitePath}" />
+        </ant>
+		-->
+    </target>
+
+</project>
+
diff --git a/org.eclipse.wtp.releng.webupdatesite/build-home/updateMirrorProject.xml b/org.eclipse.wtp.releng.webupdatesite/build-home/updateMirrorProject.xml
new file mode 100644
index 0000000..94ff247
--- /dev/null
+++ b/org.eclipse.wtp.releng.webupdatesite/build-home/updateMirrorProject.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project name="update" default="update" basedir=".">
+    <!-- original example received from Richard Gronback from cross-project list (thanks Richard!) -->
+    <!-- see http://help.eclipse.org/help31/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/misc/update_standalone.html -->
+
+    <target name="init" unless="initialized">
+        <ant antfile="init.xml" />
+    </target>
+
+    <target name="update" depends="init">
+        <echo message="Updating ${featureId} ${version}" />
+        <java jar="${eclipseLocation}/startup.jar"
+              fork="true"
+              failonerror="false">
+            <jvmarg value="-DcontinueOnError=true" />
+            <arg value="-clean" />
+            <arg value="-nosplash" />
+            <arg value="-application" />
+            <arg value="org.eclipse.update.core.standaloneUpdate" />
+            <arg value="-data" />
+            <arg value="${basedir}/buildworkspace" />
+            <arg value="-debug" />
+            <arg value="-consolelog" />
+            <arg value="-command" />
+            <arg value="mirror" />
+            <arg value="-featureId" />
+            <arg value="${featureId}" />
+            <arg value="-version" />
+            <arg value="${version}" />
+            <arg value="-from" />
+            <arg value="${updateSite}" />
+            <arg value="-to" />
+            <arg value="${localUpdateSitePath}" />
+            <arg value="-ignoreMissingPlugins" />
+            <arg value="true" />
+
+        </java>
+
+    </target>
+</project>