[jbosstools-commits] JBoss Tools SVN: r44065 - in trunk/download.jboss.org/jbosstools/updates: scripted-installation and 1 other directory.
jbosstools-commits at lists.jboss.org
jbosstools-commits at lists.jboss.org
Wed Sep 26 17:16:07 EDT 2012
Author: nickboldt
Date: 2012-09-26 17:16:07 -0400 (Wed, 26 Sep 2012)
New Revision: 44065
Added:
trunk/download.jboss.org/jbosstools/updates/scripted-installation/
trunk/download.jboss.org/jbosstools/updates/scripted-installation/README.txt
trunk/download.jboss.org/jbosstools/updates/scripted-installation/installJBossTools.cmd
trunk/download.jboss.org/jbosstools/updates/scripted-installation/installJBossTools.sh
trunk/download.jboss.org/jbosstools/updates/scripted-installation/installJBossTools.xml
Log:
https://issues.jboss.org/browse/JBIDE-12747 move from build/installation to download.jboss.org/jbosstools/updates/scripted-installation
Added: trunk/download.jboss.org/jbosstools/updates/scripted-installation/README.txt
===================================================================
--- trunk/download.jboss.org/jbosstools/updates/scripted-installation/README.txt (rev 0)
+++ trunk/download.jboss.org/jbosstools/updates/scripted-installation/README.txt 2012-09-26 21:16:07 UTC (rev 44065)
@@ -0,0 +1,40 @@
+The scripts in this folder can be used to install JBoss Tools via commandline
+into a new or existing Eclipse 3.6 installation.
+
+.cmd is for Windows
+.sh is for Mac or Linux
+
+These files are simply wrappers which call Ant and run the .xml script, passing
+in variables for source, target, and what to install (if not everything). They
+contain examples of what you might want to do.
+
+Last tested with Eclipse 3.6.2 (maintenance build) for linux 32-bit (Fedora 12,
+OpenJDK 6) and JBoss Tools 3.2.0.CR1 on Jan 11, 2011. First attempt was incomplete
+due to timeout, but on second attempt install succeeded in 9 mins. Script used
+is below for reference. Resulting footprint on disk (including Eclipse): 784M
+
+-- Nick Boldt (nboldt at redhat.com)
+
+--- --- --- --- --- --- --- ---
+
+workspace=/home/nboldt/eclipse/workspace-clean36; \
+target=/home/nboldt/eclipse/36clean; \
+eclipse=/home/nboldt/tmp/Eclipse_Bundles/eclipse-SDK-M20110105-0951-linux-gtk.tar.gz; \
+echo "Wipe $target/eclipse and $workspace ..."; rm -fr $target/eclipse $workspace; \
+echo "Unpack $eclipse ..."; cd $target; tar xzf $eclipse; cd -; \
+export GDK_NATIVE_WINDOWS=true; \
+$target/eclipse/eclipse -clean -consolelog -nosplash -data $workspace \
+ -application org.eclipse.ant.core.antRunner -f installJBossTools.xml \
+ -DtargetDir=$target/eclipse \
+ -DsourceZip=/tmp/jbosstools-3.2_trunk.aggregate-Update-SNAPSHOT.zip \
+ -DotherRepos=\
+http://download.jboss.org/jbosstools/updates/target-platform/latest/,\
+http://download.eclipse.org/releases/helios/,\
+http://download.eclipse.org/birt/update-site/2.6/,\
+http://m2eclipse.sonatype.org/sites/m2e/,\
+http://m2eclipse.sonatype.org/sites/m2e-extras/,\
+http://subclipse.tigris.org/update_1.6.x\
+ -vm /opt/jdk1.5.0_19/bin/java -vmargs -Xms128M \
+ -Xmx256M -XX:PermSize=128M -XX:MaxPermSize=256M \
+ 2>&1 | tee "$target/eclipse.log.`date`.txt"
+
Added: trunk/download.jboss.org/jbosstools/updates/scripted-installation/installJBossTools.cmd
===================================================================
--- trunk/download.jboss.org/jbosstools/updates/scripted-installation/installJBossTools.cmd (rev 0)
+++ trunk/download.jboss.org/jbosstools/updates/scripted-installation/installJBossTools.cmd 2012-09-26 21:16:07 UTC (rev 44065)
@@ -0,0 +1,43 @@
+ at echo off
+
+:: plugin-only install example - two plugins
+c:\eclipse\36clean\eclipse\eclipse.exe -consolelog -nosplash -data c:\tmp ^
+ -application org.eclipse.ant.core.antRunner ^
+ -f installJBossTools.xml ^
+ -DsourceZip=c:\eclipse\36clean\jbosstools-3.2.0.M2.aggregate-Update-2010-09-08_17-17-54-H243.zip ^
+ -DtargetDir=c:\eclipse\36clean\eclipse ^
+ -Dinstall=org.jboss.tools.jmx.core,org.jboss.tools.jmx.ui
+
+:: simple install example - one feature
+:: note that if the file is org.jboss.tools.jmx.feature_*.jar, the feature to install is org.jboss.tools.jmx.feature.feature.group
+c:\eclipse\36clean\eclipse\eclipse.exe -consolelog -nosplash -data c:\tmp ^
+ -application org.eclipse.ant.core.antRunner ^
+ -f installJBossTools.xml ^
+ -DsourceZip=c:\eclipse\36clean\jbosstools-3.2.0.M2.aggregate-Update-2010-09-08_17-17-54-H243.zip ^
+ -DtargetDir=c:\eclipse\36clean\eclipse ^
+ -Dinstall=org.jboss.tools.jmx.feature.feature.group
+
+:: full install example - all available features
+c:\eclipse\36clean\eclipse\eclipse.exe -consolelog -nosplash -data c:\tmp ^
+ -application org.eclipse.ant.core.antRunner ^
+ -f installJBossTools.xml ^
+ -DsourceZip=c:\eclipse\36clean\jbosstools-3.2.0.M2.aggregate-Update-2010-09-08_17-17-54-H243.zip ^
+ -DtargetDir=c:\eclipse\36clean\eclipse ^
+ -DotherRepos=http://download.jboss.org/jbosstools/updates/target-platform/latest/,^
+http://download.eclipse.org/releases/helios/,^
+http://download.eclipse.org/birt/update-site/2.6/,^
+http://m2eclipse.sonatype.org/sites/m2e/,^
+http://m2eclipse.sonatype.org/sites/m2e-extras/
+
+:: more features; note that some require addition of -DotherRepos to resolve missing dependencies (ie., BIRT, Maven)
+:: -Dinstall=org.drools.eclipse.feature.feature.group,org.drools.eclipse.task.feature.feature.group,org.guvnor.tools.feature.feature.group,\
+:: org.hibernate.eclipse.feature.feature.group,org.jboss.ide.eclipse.archives.feature.feature.group,org.jboss.ide.eclipse.as.feature.feature.group,\
+:: org.jboss.ide.eclipse.freemarker.feature.feature.group,\
+:: org.jboss.tools.birt.feature.feature.group,org.jboss.tools.bpel.feature.feature.group,org.jboss.tools.esb.feature.feature.group,\
+:: org.jboss.tools.flow.common.feature.feature.group,org.jboss.tools.flow.jpdl4.feature.feature.group,org.jboss.tools.jbpm.common.feature.feature.group,\
+:: org.jboss.tools.jbpm.convert.feature.feature.group,org.jboss.tools.jbpm4.feature.feature.group,org.jboss.tools.jmx.feature.feature.group,\
+:: org.jboss.tools.maven.feature.feature.group,org.jboss.tools.maven.seam.feature.feature.group,\
+:: org.jboss.tools.portlet.feature.feature.group,org.jboss.tools.profiler.feature.feature.group,\
+:: org.jboss.tools.project.examples.feature.feature.group,org.jboss.tools.richfaces.feature.feature.group,org.jboss.tools.seam.feature.feature.group,\
+:: org.jboss.tools.smooks.feature.feature.group,org.jboss.tools.struts.feature.feature.group,\
+:: org.jboss.tools.ws.feature.feature.group,org.jboss.tools.xulrunner.feature.feature.group,org.jbpm.gd.jpdl.feature.feature.group
Property changes on: trunk/download.jboss.org/jbosstools/updates/scripted-installation/installJBossTools.cmd
___________________________________________________________________
Added: svn:executable
+ *
Added: trunk/download.jboss.org/jbosstools/updates/scripted-installation/installJBossTools.sh
===================================================================
--- trunk/download.jboss.org/jbosstools/updates/scripted-installation/installJBossTools.sh (rev 0)
+++ trunk/download.jboss.org/jbosstools/updates/scripted-installation/installJBossTools.sh 2012-09-26 21:16:07 UTC (rev 44065)
@@ -0,0 +1,46 @@
+#!/bin/bash
+
+## plugin-only install example - two plugins
+/home/nboldt/eclipse/36clean/eclipse/eclipse -consolelog -nosplash -data /tmp \
+ -application org.eclipse.ant.core.antRunner \
+ -f installJBossTools.xml \
+ -DsourceZip=/home/nboldt/eclipse/36clean/jbosstools-3.2.0.M2.aggregate-Update-2010-09-08_17-17-54-H243a.zip \
+ -DtargetDir=/home/nboldt/eclipse/36clean/eclipse \
+ -Dinstall=org.jboss.tools.jmx.core,org.jboss.tools.jmx.ui
+exit
+
+## simple install example - one feature
+## note that if the file is org.jboss.tools.jmx.feature_*.jar, the feature to install is org.jboss.tools.jmx.feature.feature.group
+/home/nboldt/eclipse/36clean/eclipse/eclipse -consolelog -nosplash -data /tmp \
+ -application org.eclipse.ant.core.antRunner \
+ -f installJBossTools.xml \
+ -DsourceZip=/home/nboldt/eclipse/36clean/jbosstools-3.2.0.M2.aggregate-Update-2010-09-08_17-17-54-H243a.zip \
+ -DtargetDir=/home/nboldt/eclipse/36clean/eclipse \
+ -Dinstall=org.jboss.tools.jmx.feature.feature.group
+exit
+
+## full install example - all available features
+/home/nboldt/eclipse/36clean/eclipse/eclipse -consolelog -nosplash -data /tmp \
+ -application org.eclipse.ant.core.antRunner \
+ -f installJBossTools.xml \
+ -DsourceZip=/home/nboldt/eclipse/36clean/jbosstools-3.2.0.M2.aggregate-Update-2010-09-08_17-17-54-H243a.zip \
+ -DtargetDir=/home/nboldt/eclipse/36clean/eclipse \
+ -DotherRepos=http://download.jboss.org/jbosstools/updates/target-platform/latest/,\
+http://download.eclipse.org/releases/helios/,\
+http://download.eclipse.org/birt/update-site/2.6/,\
+http://m2eclipse.sonatype.org/sites/m2e/,\
+http://m2eclipse.sonatype.org/sites/m2e-extras/
+exit
+
+## more features; note that some require addition of -DotherRepos to resolve missing dependencies (ie., BIRT, Maven)
+## -Dinstall=org.drools.eclipse.feature.feature.group,org.drools.eclipse.task.feature.feature.group,org.guvnor.tools.feature.feature.group,\
+## org.hibernate.eclipse.feature.feature.group,org.jboss.ide.eclipse.archives.feature.feature.group,org.jboss.ide.eclipse.as.feature.feature.group,\
+## org.jboss.ide.eclipse.freemarker.feature.feature.group,\
+## org.jboss.tools.birt.feature.feature.group,org.jboss.tools.bpel.feature.feature.group,org.jboss.tools.esb.feature.feature.group,\
+## org.jboss.tools.flow.common.feature.feature.group,org.jboss.tools.flow.jpdl4.feature.feature.group,org.jboss.tools.jbpm.common.feature.feature.group,\
+## org.jboss.tools.jbpm.convert.feature.feature.group,org.jboss.tools.jbpm4.feature.feature.group,org.jboss.tools.jmx.feature.feature.group,\
+## org.jboss.tools.maven.feature.feature.group,org.jboss.tools.maven.seam.feature.feature.group,\
+## org.jboss.tools.portlet.feature.feature.group,org.jboss.tools.profiler.feature.feature.group,\
+## org.jboss.tools.project.examples.feature.feature.group,org.jboss.tools.richfaces.feature.feature.group,org.jboss.tools.seam.feature.feature.group,\
+## org.jboss.tools.smooks.feature.feature.group,org.jboss.tools.struts.feature.feature.group,\
+## org.jboss.tools.ws.feature.feature.group,org.jboss.tools.xulrunner.feature.feature.group,org.jbpm.gd.jpdl.feature.feature.group
Property changes on: trunk/download.jboss.org/jbosstools/updates/scripted-installation/installJBossTools.sh
___________________________________________________________________
Added: svn:executable
+ *
Added: trunk/download.jboss.org/jbosstools/updates/scripted-installation/installJBossTools.xml
===================================================================
--- trunk/download.jboss.org/jbosstools/updates/scripted-installation/installJBossTools.xml (rev 0)
+++ trunk/download.jboss.org/jbosstools/updates/scripted-installation/installJBossTools.xml 2012-09-26 21:16:07 UTC (rev 44065)
@@ -0,0 +1,259 @@
+<project default="install">
+ <target name="help">
+ <echo>
+ REQUIRMENTS:
+
+ This script requires Ant-Contrib. If missing, it will attempt to download
+ it from Sourceforge.net for you into this folder.
+
+ COMMANDLINE PARAMS:
+
+ install - csv list of features to install; if missing, install ALL found features.
+
+ sourceZip - /full/path/to/jboss-tools-update.zip; zip must exist
+
+ targetDir - /full/path/to/an/existing/jbdevstudio/eclipse; folder must exist
+
+ OPTIONAL / MAY BE REQUIRED:
+
+ otherRepos - csv list of local, zipped, or remote update sites from which to install
+ prereqs (eg., BIRT, Maven); may want these sites:
+ http://download.jboss.org/jbosstools/updates/target-platform/latest/
+ http://download.eclipse.org/releases/helios/,\
+ http://download.eclipse.org//birt/update-site/2.6/,\
+ http://m2eclipse.sonatype.org/sites/m2e/,\
+ http://m2eclipse.sonatype.org/sites/m2e-extras/,\
+ http://subclipse.tigris.org/update_1.6.x
+
+ RUNNING THIS SCRIPT:
+
+ /path/to/eclipse-dir/eclipse -consolelog -nosplash -data /tmp \
+ -application org.eclipse.ant.core.antRunner \
+ -f /path/to/installJBossTools.xml \
+ -DotherRepos=http://download.jboss.org/jbosstools/updates/target-platform/latest/
+ -DsourceZip=/path/to/JBossTools-Update-3.1.0.v200909102049M-H274-M3.zip \
+ -DtargetDir=/path/to/eclipse-dir \
+ -Dinstall=org.jboss.tools.jmx.sdk.feature.feature.group
+</echo>
+ </target>
+
+ <property name="install" value="" />
+ <property name="otherRepos" value="" />
+
+ <property name="sourceZip" value="" />
+ <property name="targetDir" value="" />
+
+ <target name="install" depends="init">
+ <if>
+ <or>
+ <not>
+ <isset property="targetDir" />
+ </not>
+ <equals arg1="${targetDir}" arg2="" />
+ <not>
+ <available file="${targetDir}" type="dir" />
+ </not>
+ </or>
+ <then>
+ <fail>
+ERROR!
+Must specify path to an existing Eclipse or JBoss Developer Studio
+install folder into which features will be installed.
+</fail>
+ </then>
+ </if>
+
+ <if>
+ <or>
+ <not>
+ <isset property="sourceZip" />
+ </not>
+ <equals arg1="${sourceZip}" arg2="" />
+ </or>
+ <then>
+ <fail>
+ERROR!
+Must specify path to a previously downloaded JBoss Tools
+or JBoss Developer Studio Update site zip.
+</fail>
+ </then>
+ </if>
+
+ <if>
+ <not>
+ <available file="${sourceZip}" type="file" />
+ </not>
+ <then>
+ <fail>ERROR!
+Cannot find sourceZip in ${sourceZip}.
+</fail>
+ </then>
+ </if>
+
+ <if>
+ <or>
+ <not>
+ <isset property="install" />
+ </not>
+ <equals arg1="${install}" arg2="" />
+ </or>
+ <then>
+ <!-- for update site zips, dest must be ${temp.dir}/eclipse; for SDKs, ${temp.dir} -->
+ <tempfile property="temp.dir" />
+ <mkdir dir="${temp.dir}/eclipse" />
+ <unzip src="${sourceZip}" dest="${temp.dir}/eclipse" overwrite="false" />
+
+ <!-- collect features to install if not specified -->
+ <var name="install" value="" />
+ <for param="featureJar">
+ <path>
+ <fileset dir="${temp.dir}/eclipse/features" includes="*.jar" />
+ </path>
+ <sequential>
+ <var name="feature.jarfile" unset="true" />
+ <var name="feature.id" unset="true" />
+ <propertyregex property="feature.jarfile"
+ defaultvalue="@{featureJar}"
+ input="@{featureJar}"
+ regexp=".+/features/([^/]+\.jar)"
+ replace="\1"
+ override="true"
+ />
+ <propertyregex property="feature.id"
+ defaultvalue="${feature.jarfile}"
+ input="${feature.jarfile}"
+ regexp="([^_]+)_(\d+\.\d+\.\d+\..+)\.jar"
+ replace="\1"
+ override="true"
+ />
+ <propertyregex property="feature.id"
+ defaultvalue="${feature.id}"
+ input="${feature.id}"
+ regexp="([^_]+)_(\d+\.\d+\.\d+)\.jar"
+ replace="\1"
+ override="true"
+ />
+ <var name="install" value="${install},${feature.id}.feature.group" />
+ <var name="feature.jarfile" unset="true" />
+ <var name="feature.id" unset="true" />
+ </sequential>
+ </for>
+ <!-- trim prefix "," -->
+ <propertyregex property="install" input="${install}" defaultvalue="${install}" regexp=",(.+)" replace="\1" override="true" />
+ <delete dir="${temp.dir}" />
+ </then>
+ </if>
+
+ <if>
+ <and>
+ <isset property="otherRepos" />
+ <not>
+ <equals arg1="${otherRepos}" arg2="" />
+ </not>
+ </and>
+ <then>
+ <var name="p2.director.input.repo" value="jar:file:${sourceZip}!/,${otherRepos}" />
+ </then>
+ <else>
+ <var name="p2.director.input.repo" value="jar:file:${sourceZip}!/" />
+ </else>
+ </if>
+
+
+ <antcall target="run.director">
+ <param name="p2.director.installIU" value="${install}" />
+ <param name="p2.director.install.path" value="${targetDir}" />
+ <param name="p2.director.input.repo" value="${p2.director.input.repo}" />
+ </antcall>
+
+ </target>
+
+ <target name="run.director">
+ <property name="p2.director.extraArgs" value="" />
+ <property name="p2.director.installIU" value="${install}" />
+ <property name="p2.director.install.path" value="${targetDir}" />
+ <property name="p2.director.input.repo" value="jar:file:${sourceZip}!/" />
+ <echo>
+Source Repo(s): ${p2.director.input.repo}
+Install Path: ${p2.director.install.path}
+Feature(s) or Plugin(s) to Install:
+${install}
+ </echo>
+
+ <mkdir dir="${p2.director.install.path}" />
+ <chmod perm="ugo+rwx" file="${p2.director.install.path}/eclipse" />
+ <exec executable="${p2.director.install.path}/eclipse"
+ failonerror="true"
+ dir="${p2.director.install.path}"
+ timeout="1200000"
+ taskname="p2.dir"
+ >
+ <!-- deprecated application for Eclipse 3.4: org.eclipse.equinox.p2.director.app.application -->
+ <arg line=" -application org.eclipse.equinox.p2.director" />
+ <arg line=" -nosplash" />
+ <arg line=" --launcher.suppressErrors" />
+ <arg line=" -consoleLog" />
+ <arg line=" -flavor tooling" />
+ <arg line=" -roaming" />
+ <arg line=" -profile SDKProfile" />
+ <arg line=" -destination ${p2.director.install.path}" />
+ <arg line=" -bundlepool ${p2.director.install.path}" />
+ <arg line=" -installIU ${p2.director.installIU}" />
+ <arg line=" -metadataRepository ${p2.director.input.repo},file:${p2.director.install.path}/p2/org.eclipse.equinox.p2.engine/profileRegistry/SDKProfile.profile"
+ />
+ <arg line=" -artifactRepository ${p2.director.input.repo},file:${p2.director.install.path}" />
+ <arg line=" -profileProperties org.eclipse.update.install.features=true" />
+ <arg line=" -vmargs" />
+ <arg line=" -Declipse.p2.data.area=${p2.director.install.path}/p2" />
+ <arg line=" -Declipse.p2.MD5Check=false" />
+ </exec>
+ </target>
+
+ <target name="check.ant-contrib" if="antContribJarUnavailable">
+ <antcall target="get.ant-contrib" />
+ <available file="ant-contrib.jar" property="antContribJarAvailable" />
+ <fail unless="antContribJarAvailable">Error!
+
+Ant-Contrib 1.0b2 is required. Download it from http://downloads.sourceforge.net/ant-contrib/ant-contrib-1.0b2-bin.zip,
+then place it in one of the following 4 locations. You can also redefine these paths in your build.properties file:
+
+./ant-contrib.jar
+ or
+/usr/share/java/ant-contrib.jar
+</fail>
+ </target>
+
+ <target name="get.ant-contrib">
+ <get src="http://downloads.sourceforge.net/ant-contrib/ant-contrib-1.0b2-bin.zip" dest="/tmp/ant-contrib-1.0b2-bin.zip" usetimestamp="true" />
+ <touch file="/tmp/ant-contrib-1.0b2-bin.zip" />
+ <unzip src="${downloadsDir}/ant-contrib-1.0b2-bin.zip" dest="/tmp/ant-contrib-1.0b2-bin.zip_" overwrite="true" />
+ <copy file="/tmp/ant-contrib-1.0b2-bin.zip_/ant-contrib/lib/ant-contrib.jar" tofile="./ant-contrib.jar" failonerror="true" />
+ <delete dir="/tmp/ant-contrib-1.0b2-bin.zip_" includeemptydirs="true" quiet="true" />
+ <delete file="/tmp/ant-contrib-1.0b2-bin.zip" quiet="true" />
+ </target>
+
+ <target name="init">
+ <condition property="antContribJarUnavailable">
+ <not>
+ <or>
+ <available file="/usr/share/java/ant-contrib.jar" type="file" />
+ <available file="../lib/ant-contrib.jar" type="file" />
+ <available file="./ant-contrib.jar" type="file" />
+ </or>
+ </not>
+ </condition>
+ <antcall target="check.ant-contrib" />
+ <!-- This will fail if ant-contrib.jar cannot be found. You can install Ant-Contrib via RPM, or download it here:
+ http://downloads.sourceforge.net/ant-contrib/ant-contrib-1.0b2-bin.zip
+ -->
+ <taskdef resource="net/sf/antcontrib/antlib.xml">
+ <classpath>
+ <pathelement location="/usr/share/java/ant-contrib.jar" />
+ <pathelement location="../lib/ant-contrib.jar" />
+ <pathelement location="./ant-contrib.jar" />
+ </classpath>
+ </taskdef>
+
+ </target>
+
+</project>
More information about the jbosstools-commits
mailing list