[jbpm-commits] JBoss JBPM SVN: r6536 - in jbpm3/branches/jbpm-3.2-soa: hudson and 4 other directories.

do-not-reply at jboss.org do-not-reply at jboss.org
Tue Jul 27 23:48:01 EDT 2010


Author: alex.guizar at jboss.com
Date: 2010-07-27 23:48:01 -0400 (Tue, 27 Jul 2010)
New Revision: 6536

Removed:
   jbpm3/branches/jbpm-3.2-soa/hudson/jboss/
Modified:
   jbpm3/branches/jbpm-3.2-soa/hudson/hudson-home/command.sh
   jbpm3/branches/jbpm-3.2-soa/modules/distribution/pom.xml
   jbpm3/branches/jbpm-3.2-soa/modules/distribution/scripts/antrun-installer.xml
   jbpm3/branches/jbpm-3.2-soa/modules/distribution/src/main/resources/installer/auto-install-template.xml
   jbpm3/branches/jbpm-3.2-soa/modules/distribution/src/main/resources/installer/install-definition.xml
   jbpm3/branches/jbpm-3.2-soa/profiles.example.xml
Log:
JBPM-2916 make jboss server profile configurable in hudson script; \
switch to >all< profile; retire semi-redundant jboss scripts

Modified: jbpm3/branches/jbpm-3.2-soa/hudson/hudson-home/command.sh
===================================================================
--- jbpm3/branches/jbpm-3.2-soa/hudson/hudson-home/command.sh	2010-07-27 00:40:29 UTC (rev 6535)
+++ jbpm3/branches/jbpm-3.2-soa/hudson/hudson-home/command.sh	2010-07-28 03:48:01 UTC (rev 6536)
@@ -1,104 +1,98 @@
 #!/bin/sh
 #
-# A script that uses Maven to build the project and
-# execute its test suite against a given target container 
+# Script that builds the project via Maven and
+# executes the test suite against a given target container
 #
+# Exported shell variables required:
+# WORKSPACE      work directory
+# JAVA_HOME      location of java development kit
+# JAVA_14_HOME
+# JAVA_15_HOME   required if testing against java 1.4 only
+# DATABASE       db2, hsqldb, mssql, mysql, oracle, postgresql
+# CONTAINER      jboss405, jboss423, jboss501, jboss510
+# JBOSS_BINDADDR jboss bind address
+# SOURCE_REPO    location of jboss distributions
+#
 # $Id$
 
-WORKSPACE=$PWD
-JBPMDIR=$WORKSPACE/jbpm
-
 #
 # Extract JBoss distro
 #
-case "$CONTAINER" in
-  jboss405*)
-    JBOSS_BUILD=jboss-4.0.5.GA
+case $CONTAINER in
+  jboss405)
+    JBOSS_VERSION=jboss-4.0.5.GA
     ;;
-  jboss423*)
-    JBOSS_BUILD=jboss-4.2.3.GA
+  jboss423)
+    JBOSS_VERSION=jboss-4.2.3.GA
     ;;
-  jboss501*)
-    JBOSS_BUILD=jboss-5.0.1.GA
+  jboss501)
+    JBOSS_VERSION=jboss-5.0.1.GA
     ;;
-  jboss510*)
-    JBOSS_BUILD=jboss-5.1.0.GA
+  jboss510)
+    JBOSS_VERSION=jboss-5.1.0.GA
     ;;
+  *)
+    echo "invalid container: $CONTAINER"
+    exit 1
+    ;;
 esac
-JBOSS_HOME=$WORKSPACE/$JBOSS_BUILD
+JBOSS_HOME=$WORKSPACE/$JBOSS_VERSION
+JBOSS_SERVER=all
 
-rm -rf $JBOSS_BUILD
-unzip -q $HUDSON_BASE/jboss/$JBOSS_BUILD.zip
+rm -rf $JBOSS_HOME
+unzip -q -d $WORKSPACE $SOURCE_REPO/jboss/$JBOSS_VERSION.zip
 
 #
 # Determine Java platform version
 #
-java -version 2> version.tmp
-JAVA_VERSION=`grep "java version" version.tmp | awk '{ print substr($3, 2, length($3)-2); }'`
-rm version.tmp
-echo java version $JAVA_VERSION
+JAVA_VERSION=`java -version 2>&1 | grep version | awk '{ print substr($3, 2, 3); }'`
 
-case $JAVA_VERSION in
-  1.4*)
+if [ $JAVA_VERSION = 1.4 ]; then
     JAVA_BT_HOME=$JAVA_15_HOME
-    JAVA_RT_HOME=$JAVA_14_HOME
+    JAVA_RT_HOME=$JAVA_HOME
     JAVA=$JAVA_BT_HOME/bin/java
-    ;;
-  *)
+else
     JAVA_BT_HOME=$JAVA_HOME
     JAVA_RT_HOME=$JAVA_HOME
     JAVA=java
-    ;;
-esac
+fi
 
 #
 # Set up Maven
 #
-MVN_OPTS="-Ddatabase=$DATABASE -Dcontainer=$CONTAINER -Djboss.home=$JBOSS_HOME -Djboss.bind.address=$JBOSS_BINDADDR"
-cp "$JBPMDIR/hudson/profiles.redhat.qa.xml" "$JBPMDIR/profiles.xml"
+export MAVEN_OPTS="-Ddatabase=$DATABASE"
+cp -u hudson/profiles.redhat.qa.xml profiles.xml
 
 #
 # Build distro
 #
-cd $JBPMDIR
 export JAVA_HOME=$JAVA_BT_HOME
-MVN_CMD="mvn -U $MVN_OPTS -Pdistro,soa clean install"
-echo $MVN_CMD; $MVN_CMD; MVN_STATUS=$?
-if [ $MVN_STATUS -ne 0 ]; then
-  echo maven exit status $MVN_STATUS
-  exit 1
-fi
+JBPM_VERSION=`mvn -Dexpression=project.version help:evaluate | grep '^3\.'`
+mvn -Pdistro,soa -Djbpm.home=$WORKSPACE/jbpm-$JBPM_VERSION -Dcontainer=$CONTAINER -Djboss.home=$JBOSS_HOME -Djboss.server=$JBOSS_SERVER clean install
 
 #
 # Install distro
 #
-JBPM_VERSION=`echo project version \$\{project.version\} | mvn help:evaluate | grep 'project version' | awk '{ print $3 }'`
-echo jbpm version $JBPM_VERSION
-AUTO_INSTALL=modules/distribution/target/resources/auto-install-template.xml; cat $AUTO_INSTALL;
-JAVA_CMD="$JAVA -jar modules/distribution/target/jbpm-installer-$JBPM_VERSION.jar $AUTO_INSTALL"
-echo $JAVA_CMD; $JAVA_CMD 
+$JAVA -jar modules/distribution/target/jbpm-installer-$JBPM_VERSION.jar \
+  modules/distribution/target/resources/auto-install-template.xml
 
 #
 # Install non-redistributable JDBC drivers
 #
-MVN_CMD="mvn -o -N $MVN_OPTS -DoutputFile=resolve.tmp dependency:resolve"
-echo $MVN_CMD; $MVN_CMD
-cat resolve.tmp
+mvn -N -DoutputFile=$WORKSPACE/resolve.tmp dependency:resolve
 
 # Install DB2 driver
 if [ "$DATABASE" = "db2" ]; then
-  DB2JCC_VERSION=`grep com.ibm:db2jcc:jar resolve.tmp | awk --field-separator : '{ print $4 }'`
+  DB2JCC_VERSION=`grep com.ibm:db2jcc:jar $WORKSPACE/resolve.tmp | awk -F : '{ print $4 }'`
   DB2JCC_JAR=~/.m2/repository/com/ibm/db2jcc/$DB2JCC_VERSION/db2jcc-$DB2JCC_VERSION.jar
   if [ -f $DB2JCC_JAR ]; then
-    CP_CMD="cp $DB2JCC_JAR $JBOSS_HOME/server/$JBOSS_SERVER/lib"
-    echo $CP_CMD; $CP_CMD
+  	ln -s $DB2JCC_JAR $JBOSS_HOME/server/$JBOSS_SERVER/lib
   else
     echo "WARNING: DB2 driver not found: $DB2JCC_JAR"
   fi
   DB2JCC_LICENSE=~/.m2/repository/com/ibm/db2jcc_license_cu/$DB2JCC_VERSION/db2jcc_license_cu-$DB2JCC_VERSION.jar
   if [ -f $DB2JCC_LICENSE ]; then
-    CP_CMD="cp $DB2JCC_LICENSE $JBOSS_HOME/server/$JBOSS_SERVER/lib"
-    echo $CP_CMD; $CP_CMD
+  	ln -s $DB2JCC_LICENSE $JBOSS_HOME/server/$JBOSS_SERVER/lib
   else
     echo "WARNING: DB2 license not found: $DB2JCC_LICENSE"
   fi
@@ -106,11 +100,10 @@
 
 # Install MSSQL driver
 if [ "$DATABASE" = "mssql" ]; then
-  MSJDBC_VERSION=`grep com.microsoft.sqlserver:msjdbc resolve.tmp | awk --field-separator : '{ print $4 }'`
+  MSJDBC_VERSION=`grep com.microsoft.sqlserver:msjdbc $WORKSPACE/resolve.tmp | awk -F : '{ print $4 }'`
   MSJDBC_JAR=~/.m2/repository/com/microsoft/sqlserver/msjdbc/$MSJDBC_VERSION/msjdbc-$MSJDBC_VERSION.jar
   if [ -f $MSJDBC_JAR ]; then
-    CP_CMD="cp $MSJDBC_JAR $JBOSS_HOME/server/$JBOSS_SERVER/lib"
-    echo $CP_CMD; $CP_CMD
+  	ln -s $MSJDBC_JAR $JBOSS_HOME/server/$JBOSS_SERVER/lib
   else
     echo "WARNING: MSSQL driver not found: $MSSQL_JAR"
   fi
@@ -118,11 +111,10 @@
 
 # Install Oracle driver
 if [ "$DATABASE" = "oracle" ]; then
-  OJDBC_VERSION=`grep com.oracle:ojdbc14 resolve.tmp | awk --field-separator : '{ print $4 }'`
+  OJDBC_VERSION=`grep com.oracle:ojdbc14 $WORKSPACE/resolve.tmp | awk -F : '{ print $4 }'`
   OJDBC_JAR=~/.m2/repository/com/oracle/ojdbc14/$OJDBC_VERSION/ojdbc14-$OJDBC_VERSION.jar
   if [ -f $OJDBC_JAR ]; then
-    CP_CMD="cp $OJDBC_JAR $JBOSS_HOME/server/$JBOSS_SERVER/lib"
-    echo $CP_CMD; $CP_CMD
+    ln -s $OJDBC_JAR $JBOSS_HOME/server/$JBOSS_SERVER/lib
   else
     echo "WARNING: Oracle driver not found: $OJDBC_JAR"
   fi
@@ -130,59 +122,56 @@
 
 # Install Sybase driver
 if [ "$DATABASE" = "sybase" ]; then
-  JCONNECT_VERSION=`grep com.sybase:jconnect resolve.tmp | awk --field-separator : '{ print $4 }'`
+  JCONNECT_VERSION=`grep com.sybase:jconnect $WORKSPACE/resolve.tmp | awk -F : '{ print $4 }'`
   JCONNECT_JAR=~/.m2/repository/com/sybase/jconnect/$JCONNECT_VERSION/jconnect-$JCONNECT_VERSION.jar
   if [ -f $JCONNECT_JAR ]; then
-    CP_CMD="cp $JCONNECT_JAR $JBOSS_HOME/server/$JBOSS_SERVER/lib"
-    echo $CP_CMD; $CP_CMD
+    ln -s $JCONNECT_JAR $JBOSS_HOME/server/$JBOSS_SERVER/lib
   else
     echo "WARNING: Sybase driver not found: $JCONNECT_JAR"
   fi
 fi
 
 # Remove resolution output file
-rm resolve.tmp
+rm $WORKSPACE/resolve.tmp
 
 #
 # Start JBoss AS
 #
 export JAVA_HOME=$JAVA_RT_HOME
-$JBPMDIR/hudson/jboss/bin/jboss.sh $JBOSS_HOME start $JBOSS_BINDADDR
+$JBOSS_HOME/bin/run.sh -b $JBOSS_BINDADDR -c $JBOSS_SERVER &> /dev/null &
 
 # Was it successfully started?
-$JBPMDIR/hudson/jboss/bin/http-spider.sh $JBOSS_BINDADDR:8080 $WORKSPACE
-if [ -e $WORKSPACE/spider.failed ]; then
+wget --spider --retry-connrefused --waitretry=24 --no-verbose $JBOSS_BINDADDR:8080
+if [ $? -ne 0 ]; then
   tail -n 100 $JBOSS_HOME/server/$JBOSS_SERVER/log/server.log
-  $JBPMDIR/hudson/jboss/bin/jboss.sh $JBOSS_HOME stop $JBOSS_BINDADDR
+  $JBOSS_HOME/bin/shutdown.sh -s jnp://$JBOSS_BINDADDR:1099 -S
   exit 1
 fi
 
 #
 # Log dependency tree
 #
-MVN_CMD="mvn -o $MVN_OPTS dependency:tree"
-echo $MVN_CMD; $MVN_CMD | tee $WORKSPACE/dependency-tree.txt
+mvn dependency:tree | tee $WORKSPACE/dependency-tree.txt
 
 #
 # Give tests a max memory amount of at least 256 MB
 #
 TOTAL_MEM=`free -mo | grep Mem | awk '{ print $2 }'`
-echo "Total memory: $TOTAL_MEM"
-MAX_MEM=`expr $TOTAL_MEM / 4`
-[ $MAX_MEM -lt 256 ] && MAX_MEM=256
-MVN_OPTS="$MVN_OPTS -Dsurefire.jvm.args=-Xmx$MAX_MEM"m
+if [ $JAVA_VERSION = 1.4 -o `expr $TOTAL_MEM / 4` -lt 256 ]; then
+  export MAVEN_OPTS="$MAVEN_OPTS -Dsurefire.jvm.args=-Xmx256m"
+fi
 
 #
 # Execute tests
 #
-MVN_CMD="mvn -o -fae $MVN_OPTS test"
-echo $MVN_CMD; $MVN_CMD 2>&1 | tee $WORKSPACE/tests.log
-cat $WORKSPACE/tests.log | egrep FIXME\|FAILED | sort -u | tee $WORKSPACE/fixme.txt
-cat $WORKSPACE/fixme.txt | egrep "\[\S*]" > $WORKSPACE/errata-$CONTAINER.txt
+mvn --fail-at-end -Djboss.bind.address=$JBOSS_BINDADDR test | tee $WORKSPACE/tests.log
+grep -E FIXME\|FAILED $WORKSPACE/tests.log | sort -u | tee $WORKSPACE/fixme.txt
+grep -E "\[\S*]" $WORKSPACE/fixme.txt > $WORKSPACE/errata-$CONTAINER.txt
 
 #
 # Stop JBoss AS
 #
-$JBPMDIR/hudson/jboss/bin/jboss.sh $JBOSS_HOME stop
-cp $JBOSS_HOME/server/$JBOSS_SERVER/log/boot.log $WORKSPACE/jboss-boot.log
-cp $JBOSS_HOME/server/$JBOSS_SERVER/log/server.log $WORKSPACE/jboss-server.log
+$JBOSS_HOME/bin/shutdown.sh -s jnp://$JBOSS_BINDADDR:1099 -S
+ln -sf $JBOSS_HOME/server/$JBOSS_SERVER/log/boot.log $WORKSPACE
+ln -sf $JBOSS_HOME/server/$JBOSS_SERVER/log/server.log $WORKSPACE
+

Modified: jbpm3/branches/jbpm-3.2-soa/modules/distribution/pom.xml
===================================================================
--- jbpm3/branches/jbpm-3.2-soa/modules/distribution/pom.xml	2010-07-27 00:40:29 UTC (rev 6535)
+++ jbpm3/branches/jbpm-3.2-soa/modules/distribution/pom.xml	2010-07-28 03:48:01 UTC (rev 6536)
@@ -31,7 +31,6 @@
     <project.build.assemblyDirectory>${project.build.directory}/${assembly.id}</project.build.assemblyDirectory>
     <resources.outputDirectory>${project.build.directory}/resources</resources.outputDirectory>
     <resources.directory>${basedir}/src/main/resources</resources.directory>
-    <product.name>${project.parent.name}</product.name>
   </properties>
 
   <!-- Dependencies -->
@@ -210,8 +209,10 @@
                   value="${project.build.assemblyDirectory}/resources" />
                 <property name="resources.dir" value="${resources.directory}" />
                 <property name="resources.output.dir" value="${resources.outputDirectory}" />
+                <property name="jbpm.home" value="${jbpm.home}" />
                 <property name="container" value="${container}" />
                 <property name="jboss.home" value="${jboss.home}" />
+                <property name="jboss.server" value="${jboss.server}" />
                 <property name="database" value="${database}" />
                 <ant antfile="scripts/antrun-installer.xml" target="process-resources" />
               </tasks>
@@ -251,7 +252,6 @@
           <type>war</type>
         </dependency>
       </dependencies>
-
       <build>
         <plugins>
           <plugin>
@@ -280,5 +280,4 @@
       </build>
     </profile>
   </profiles>
-
-</project>
\ No newline at end of file
+</project>

Modified: jbpm3/branches/jbpm-3.2-soa/modules/distribution/scripts/antrun-installer.xml
===================================================================
--- jbpm3/branches/jbpm-3.2-soa/modules/distribution/scripts/antrun-installer.xml	2010-07-27 00:40:29 UTC (rev 6535)
+++ jbpm3/branches/jbpm-3.2-soa/modules/distribution/scripts/antrun-installer.xml	2010-07-28 03:48:01 UTC (rev 6536)
@@ -158,12 +158,13 @@
     <copy todir="${resources.output.dir}" overwrite="true">
       <fileset dir="${resources.dir}/installer" />
       <filterset>
-        <filter token="user.home" value="${user.home}" />
         <filter token="project.version" value="${project.version}" />
+        <filter token="jbpm.home" value="${jbpm.home}" />
         <filter token="container" value="${container}" />
         <filter token="jboss.home" value="${jboss.home}" />
+        <filter token="jboss.server" value="${jboss.server}"/>
         <filter token="database" value="${database}" />
       </filterset>
     </copy>
   </target>
-</project>
\ No newline at end of file
+</project>

Modified: jbpm3/branches/jbpm-3.2-soa/modules/distribution/src/main/resources/installer/auto-install-template.xml
===================================================================
--- jbpm3/branches/jbpm-3.2-soa/modules/distribution/src/main/resources/installer/auto-install-template.xml	2010-07-27 00:40:29 UTC (rev 6535)
+++ jbpm3/branches/jbpm-3.2-soa/modules/distribution/src/main/resources/installer/auto-install-template.xml	2010-07-28 03:48:01 UTC (rev 6536)
@@ -2,7 +2,7 @@
 <AutomatedInstallation langpack="eng">
   <com.izforge.izpack.panels.HelloPanel />
   <com.izforge.izpack.panels.TargetPanel>
-    <installpath>@user.home@/jbpm- at project.version@</installpath>
+    <installpath>@jbpm.home@</installpath>
   </com.izforge.izpack.panels.TargetPanel>
   <com.izforge.izpack.panels.TreePacksPanel>
     <pack name="jBPM3 Standalone" index="0" selected="true"/>
@@ -14,7 +14,7 @@
   </com.izforge.izpack.panels.TreePacksPanel>
   <com.izforge.izpack.panels.UserInputPanel>
     <userInput>
-      <entry key="jbossTargetServer" value="all" />
+      <entry key="jbossTargetServer" value="@jboss.server@" />
       <entry key="jbossSelection" value="@container@" />
     </userInput>
   </com.izforge.izpack.panels.UserInputPanel>

Modified: jbpm3/branches/jbpm-3.2-soa/modules/distribution/src/main/resources/installer/install-definition.xml
===================================================================
--- jbpm3/branches/jbpm-3.2-soa/modules/distribution/src/main/resources/installer/install-definition.xml	2010-07-27 00:40:29 UTC (rev 6535)
+++ jbpm3/branches/jbpm-3.2-soa/modules/distribution/src/main/resources/installer/install-definition.xml	2010-07-28 03:48:01 UTC (rev 6536)
@@ -5,8 +5,9 @@
     otherwise use variables below in installer files with ${} 
   -->
   <info>
-    <appname>@{product.name}</appname>
+    <appname>@{project.name}</appname>
     <appversion>@{project.version}</appversion>
+    <url>http://jboss.org/jbpm</url>
     <uninstaller path="$INSTALL_PATH/uninstall" />
   </info>
   <guiprefs width="600" height="440" resizable="yes" />
@@ -352,4 +353,4 @@
     </pack>
 
   </packs>
-</installation>
\ No newline at end of file
+</installation>

Modified: jbpm3/branches/jbpm-3.2-soa/profiles.example.xml
===================================================================
--- jbpm3/branches/jbpm-3.2-soa/profiles.example.xml	2010-07-27 00:40:29 UTC (rev 6535)
+++ jbpm3/branches/jbpm-3.2-soa/profiles.example.xml	2010-07-28 03:48:01 UTC (rev 6536)
@@ -61,6 +61,9 @@
         <jboss423.home>$USER_HOME/jboss-4.2.3.GA</jboss423.home>
         <jboss501.home>$USER_HOME/jboss-5.0.1.GA</jboss501.home>
         <jboss510.home>$USER_HOME/jboss-5.1.0.GA</jboss510.home>
+        <jboss.server>all</jboss.server>
+
+        <jbpm.home>$USER_HOME/jbpm-${project.version}</jbpm.home>
       </properties>
     </profile>
   </profiles>



More information about the jbpm-commits mailing list