diff options
| author | Arnaud Simon <arnaudsimon@apache.org> | 2008-07-23 15:02:22 +0000 |
|---|---|---|
| committer | Arnaud Simon <arnaudsimon@apache.org> | 2008-07-23 15:02:22 +0000 |
| commit | 2fc957e3d28fa3b084ef334b702bb5116f60c462 (patch) | |
| tree | 53d217fb806c56eb23fb9dab19fef75c3d329f4f | |
| parent | f909f338fe2ea66e50e5923fcd008ae2ae9ccd67 (diff) | |
| download | qpid-python-2fc957e3d28fa3b084ef334b702bb5116f60c462.tar.gz | |
qpid-1157: added jms tck scripts + README file + config file for setting email related properties
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@679105 13f79535-47bb-0310-9956-ffa450edef68
| -rw-r--r-- | cc/README | 58 | ||||
| -rw-r--r-- | cc/config.properties | 4 | ||||
| -rw-r--r-- | cc/config.xml | 19 | ||||
| -rw-r--r-- | cc/config/bdbstore-cpp-trunk.xml | 22 | ||||
| -rw-r--r-- | cc/config/cpp-perftests.xml (renamed from cc/config/cpp-trunk-perftests.xml) | 0 | ||||
| -rw-r--r-- | cc/config/cpp-trunk.xml | 11 | ||||
| -rw-r--r-- | cc/config/example-automation.xml | 36 | ||||
| -rw-r--r-- | cc/config/java-jmstck.xml | 63 | ||||
| -rw-r--r-- | cc/config/java-perftests.xml | 62 | ||||
| -rw-r--r-- | cc/config/java-trunk.xml | 171 | ||||
| -rw-r--r-- | cc/config/java/cpp.noprefetch.testprofile | 16 | ||||
| -rw-r--r-- | cc/config/java/cpp.testprofile | 17 | ||||
| -rw-r--r-- | cc/config/java/cppExcludeList | 15 | ||||
| -rw-r--r-- | cc/config/java/cppNoPrefetchExcludeList | 49 | ||||
| -rw-r--r-- | cc/config/java/java.testprofile | 17 | ||||
| -rw-r--r-- | cc/config/java/javaExcludeList | 13 | ||||
| -rw-r--r-- | cc/config/java/jndi.properties | 21 | ||||
| -rw-r--r-- | cc/scripts/build.xml | 12 | ||||
| -rwxr-xr-x | cc/scripts/javaconfig.sh | 5 | ||||
| -rw-r--r-- | cc/scripts/javajmstck.sh | 62 | ||||
| -rw-r--r-- | java/010ExcludeList | 3 | ||||
| -rw-r--r-- | java/010ExcludeList-store | 4 |
22 files changed, 435 insertions, 245 deletions
diff --git a/cc/README b/cc/README new file mode 100644 index 0000000000..b0e3385d6d --- /dev/null +++ b/cc/README @@ -0,0 +1,58 @@ +****************** +Prerequisites +****************** +Check out the source +see http://cwiki.apache.org/qpid/building.html + +****************** +Install CruiseControl +****************** + +Download CruiseControl from: http://cruisecontrol.sourceforge.net/ + + * Unzip the release to a directory, for example ~/cruisecontrol-bin-2.7.2 + * Check that the scripts cruisecontrol-bin-2.7.2/cruisecontrol.sh and cruisecontrol-bin-2.7.2/apache-ant-1.7.0/bin/ant have execution permission. + * Make sure your directory ~/.ant/lib contains the following jars: + o The ant jar files that can be found in cruisecontrol-bin-2.7.2/apache-ant-1.7.0/lib/ + o xalan-2.7.0.jar + +****************** +Set system variables +****************** + +Prior to use CruiseControl you'll need to set two system variables: +Variable Value +CC_HOME path to your qpid project, for example /home/foo/projects/qpid +CPPSTORE_HOME path to your C++ store, for example /home/foo/projects/bdbstore-cpp + +Edit the file CC_HOME/config.properties and set the properties so to match your system requirements. +Notes + * the cpp store can be checked out from: https://svn.jboss.org/repos/rhmessaging/store/trunk/cpp + * Only unix scrips are currently provided + +****************** +Running CruiseControl +****************** + +Run cruisecontrol-bin-2.7.2/cruisecontrol.sh from CC_HOME/cc + +****************** +Running the Sun java TCK +****************** + +If you wish to run the Sun JMS TCK, follow those two steps: +* Extract the TCK +* (As required by the TCK) Set TS_HOME to the location where the JMS TCK has been installed. + +****************** +Projects +****************** + +Project Description +qpid-cpp-trunk Builds and tests the C++ broker +qpid-cpp-trunk-perftests Runs the C++ performance tests +qpid-java-trunk Builds and runs the Java tests with an 0.8 inVM broker, a c++ broker without prefetch and a c++ broker with pre-fetch +bdbstore-cpp-trunk Builds the C++ store (required for the Java tests) +example-automation Runs all the example combinations for python, C++ and java +java-perftests Runs the java performance tests +java-jmstck Runs the java jms tck (see running the tck)
\ No newline at end of file diff --git a/cc/config.properties b/cc/config.properties new file mode 100644 index 0000000000..0a0a7b747a --- /dev/null +++ b/cc/config.properties @@ -0,0 +1,4 @@ +mail.subject=CC Report for +mail.host=localhost +mail.returnaddress=my-email +mail.list=list
\ No newline at end of file diff --git a/cc/config.xml b/cc/config.xml index 9db8b2754f..2436cec1ca 100644 --- a/cc/config.xml +++ b/cc/config.xml @@ -18,10 +18,17 @@ under the License. -->
<cruisecontrol>
- <include.projects file="./config/cpp-trunk.xml"/>
- <include.projects file="./config/java-trunk.xml"/>
- <include.projects file="./config/bdbstore-cpp-trunk.xml"/>
- <include.projects file="./config/cpp-trunk-perftests.xml"/>
- <include.projects file="./config/example-automation.xml"/>
- <include.projects file="./config/java-perftests.xml"/>
+ <!-- Load environment variables -->
+ <property environment="env" toupper="true"/>
+
+ <!-- Set a collection of global properties from the properties file "config.properties" -->
+ <property file="config.properties"/>
+
+ <include.projects file="./config/cpp-trunk.xml"/>
+ <include.projects file="./config/java-trunk.xml"/>
+ <include.projects file="./config/bdbstore-cpp-trunk.xml"/>
+ <include.projects file="./config/cpp-perftests.xml"/>
+ <include.projects file="./config/example-automation.xml"/>
+ <include.projects file="./config/java-perftests.xml"/>
+ <include.projects file="./config/java-jmstck.xml"/>
</cruisecontrol>
diff --git a/cc/config/bdbstore-cpp-trunk.xml b/cc/config/bdbstore-cpp-trunk.xml index 1584791518..254af62170 100644 --- a/cc/config/bdbstore-cpp-trunk.xml +++ b/cc/config/bdbstore-cpp-trunk.xml @@ -17,19 +17,15 @@ specific language governing permissions and limitations under the License.
-->
<cruisecontrol>
-
<project name="bdbstore-cpp-trunk"
buildafterfailed="false">
-
- <!-- Load environment variables -->
- <property environment="env" toupper="true"/>
<listeners>
<currentbuildstatuslistener file="logs/${project.name}/status.txt"/>
</listeners>
<bootstrappers>
- <svnbootstrapper localWorkingCopy="${env.CPPSTORE_HOME}" />
+ <svnbootstrapper localWorkingCopy="${env.CPPSTORE_HOME}"/>
</bootstrappers>
<modificationset quietperiod="30">
@@ -39,10 +35,20 @@ under the License. <schedule interval="3600">
<exec timeout="1800"
- command="/bin/bash"
- args="${env.CC_HOME}/cc/scripts/bdbstorecppbuild.sh"
- workingdir="${env.CPPSTORE_HOME}" />
+ command="/bin/bash"
+ args="${env.CC_HOME}/cc/scripts/bdbstorecppbuild.sh"
+ workingdir="${env.CPPSTORE_HOME}"/>
</schedule>
+ <publishers>
+ <email subjectprefix="${mail.subject}: ${project.name}" mailhost="${mail.host}"
+ returnaddress="${mail.returnaddress}"
+ buildresultsurl="http://${env.HOSTNAME}:8080/buildresults/${project.name}"
+ skipusers="false"
+ reportsuccess="fixes"
+ spamwhilebroken="true">
+ <always address="${mail.list}"/>
+ </email>
+ </publishers>
</project>
</cruisecontrol>
diff --git a/cc/config/cpp-trunk-perftests.xml b/cc/config/cpp-perftests.xml index 8a5079b60b..8a5079b60b 100644 --- a/cc/config/cpp-trunk-perftests.xml +++ b/cc/config/cpp-perftests.xml diff --git a/cc/config/cpp-trunk.xml b/cc/config/cpp-trunk.xml index 7943dac6de..56e1d2bb54 100644 --- a/cc/config/cpp-trunk.xml +++ b/cc/config/cpp-trunk.xml @@ -44,5 +44,16 @@ under the License. args="../cc/scripts/cppbuild.sh"
workingdir="../cpp" />
</schedule>
+
+ <publishers>
+ <email subjectprefix="${mail.subject}: ${project.name}" mailhost="${mail.host}"
+ returnaddress="${mail.returnaddress}"
+ buildresultsurl="http://${env.HOSTNAME}:8080/buildresults/${project.name}"
+ skipusers="false"
+ reportsuccess="fixes"
+ spamwhilebroken="true">
+ <always address="${mail.list}"/>
+ </email>
+ </publishers>
</project>
</cruisecontrol>
diff --git a/cc/config/example-automation.xml b/cc/config/example-automation.xml index 7dc69bd052..52dd135c24 100644 --- a/cc/config/example-automation.xml +++ b/cc/config/example-automation.xml @@ -20,9 +20,6 @@ under the License. <project name="qpid-example-automation"
buildafterfailed="false">
- <!-- Load environment variables -->
- <property environment="env" toupper="true"/>
-
<listeners>
<currentbuildstatuslistener file="logs/${project.name}/status.txt"/>
</listeners>
@@ -34,31 +31,28 @@ under the License. </modificationset>
<schedule interval="3600">
- <exec timeout="1800"
- command="/bin/bash"
- args="${env.CC_HOME}/cc/scripts/check_examples.sh"
- errorstr="FAILED"
- workingdir="./" />
+ <exec timeout="1800"
+ command="/bin/bash"
+ args="${env.CC_HOME}/cc/scripts/check_examples.sh"
+ errorstr="FAILED"
+ workingdir="./"/>
</schedule>
- <publishers>
- <artifactspublisher dest="artifacts/${project.name}"
+ <publishers>
+ <artifactspublisher dest="artifacts/${project.name}"
file="${env.CC_HOME}/broker.log"/>
- <artifactspublisher dest="artifacts/${project.name}"
+ <artifactspublisher dest="artifacts/${project.name}"
file="${env.CC_HOME}/script.log"/>
- <!--
- <email subjectprefix="CC report fro ${project.name}" mailhost="localhost"
- returnaddress="my_email"
- buildresultsurl="http://my_host:8080/buildresults/${project.name}"
- skipusers="false"
- reportsuccess="fixes"
+
+ <email subjectprefix="${mail.subject}: ${project.name}" mailhost="${mail.host}"
+ returnaddress="${mail.returnaddress}"
+ buildresultsurl="http://${env.HOSTNAME}:8080/buildresults/${project.name}"
+ skipusers="false"
+ reportsuccess="fixes"
spamwhilebroken="true">
- <always address="email"/>
- <map alias="name" address="email"/>
+ <always address="${mail.list}"/>
</email>
- -->
-
</publishers>
</project>
</cruisecontrol>
diff --git a/cc/config/java-jmstck.xml b/cc/config/java-jmstck.xml new file mode 100644 index 0000000000..2b10b0c5b5 --- /dev/null +++ b/cc/config/java-jmstck.xml @@ -0,0 +1,63 @@ +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you under the Apache License, Version 2.0 (the +"License"); you may not use this file except in compliance +with the License. You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, +software distributed under the License is distributed on an +"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, either express or implied. See the License for the +specific language governing permissions and limitations +under the License. +--> + +<cruisecontrol> + <project name="qpid-java-jmstck" + buildafterfailed="false"> + + <listeners> + <currentbuildstatuslistener file="logs/${project.name}/status.txt"/> + </listeners> + + <modificationset quietperiod="30"> + <buildstatus logdir="logs/qpid-cpp-trunk/"/> + <buildstatus logdir="logs/qpid-java-trunk/"/> + </modificationset> + + <schedule> + <ant target="tck" + uselogger="false" + time="0000" + timeout="3600" + antworkingdir="scripts"> + </ant> + </schedule> + + <publishers> + <artifactspublisher dest="artifacts/${project.name}" + file="${env.TS_HOME}/tck1.log"/> + <artifactspublisher dest="artifacts/${project.name}" + file="${env.TS_HOME}/tck2.log"/> + + <onfailure> + <artifactspublisher dest="artifacts/${project.name}" + file="${env.CC_HOME}/jmstck-broker.log"/> + </onfailure> + + <email subjectprefix="RHEL5/64" mailhost="localhost" + returnaddress="qpid-test-cruisecontrol@qpid-test.lab.bos.redhat.com" + buildresultsurl="http://qpid-test.lab.bos.redhat.com:8080/buildresults/${project.name}" + skipusers="false" + reportsuccess="fixes" + spamwhilebroken="true"> + <always address="amqp-list@redhat.com"/> + </email> + </publishers> + </project> +</cruisecontrol> diff --git a/cc/config/java-perftests.xml b/cc/config/java-perftests.xml index 5b84710139..45e1b14b9f 100644 --- a/cc/config/java-perftests.xml +++ b/cc/config/java-perftests.xml @@ -26,51 +26,47 @@ under the License. </listeners>
<bootstrappers>
- <svnbootstrapper localWorkingCopy="../java/perftests" />
+ <svnbootstrapper localWorkingCopy="../java/perftests"/>
</bootstrappers>
<modificationset quietperiod="30">
- <buildstatus logdir="logs/qpid-cpp-trunk/"/>
- <buildstatus logdir="logs/qpid-java-trunk/"/>
+ <buildstatus logdir="logs/qpid-cpp-trunk/"/>
+ <buildstatus logdir="logs/qpid-java-trunk/"/>
<svn localWorkingCopy="../java/perftests"/>
</modificationset>
<schedule interval="3600">
- <composite>
- <!-- 0.10 C++ broker -->
- <exec timeout="1800"
- command="/bin/bash"
- args="../cc/scripts/runbroker.sh"
- workingdir="../java" />
- <ant target="all-tests"
- uselogger="false"
- antworkingdir="../java/perftests">
- <jvmarg arg="-Xmx1024m"/>
- </ant>
- <exec timeout="1800"
- command="/bin/bash"
- args="../cc/scripts/stopbroker.sh"
- workingdir="../java"/>
- </composite>
- </schedule>
+ <composite>
+ <!-- 0.10 C++ broker -->
+ <exec timeout="1800"
+ command="/bin/bash"
+ args="../cc/scripts/runbroker.sh"
+ workingdir="../java"/>
+ <ant target="all-tests"
+ uselogger="false"
+ antworkingdir="../java/perftests">
+ <jvmarg arg="-Xmx1024m"/>
+ </ant>
+ <exec timeout="1800"
+ command="/bin/bash"
+ args="../cc/scripts/stopbroker.sh"
+ workingdir="../java"/>
+ </composite>
+ </schedule>
<publishers>
+ <artifactspublisher dest="artifacts/${project.name}"
+ subdirectory="results"
+ dir="../java/perftests/results"/>
- <artifactspublisher dest="artifacts/${project.name}"
- subdirectory="results"
- dir="../java/perftests/results"/>
-<!--
- <email subjectprefix="CC report fro ${project.name}" mailhost="localhost"
- returnaddress="my_email"
- buildresultsurl="http://my_host:8080/buildresults/${project.name}"
- skipusers="false"
- reportsuccess="fixes"
+ <email subjectprefix="${mail.subject}: ${project.name}" mailhost="${mail.host}"
+ returnaddress="${mail.returnaddress}"
+ buildresultsurl="http://${env.HOSTNAME}:8080/buildresults/${project.name}"
+ skipusers="false"
+ reportsuccess="fixes"
spamwhilebroken="true">
- <always address="email"/>
- <map alias="name" address="email"/>
+ <always address="${mail.list}"/>
</email>
--->
</publishers>
-
</project>
</cruisecontrol>
diff --git a/cc/config/java-trunk.xml b/cc/config/java-trunk.xml index 5fdfb39a41..9163a51b54 100644 --- a/cc/config/java-trunk.xml +++ b/cc/config/java-trunk.xml @@ -26,111 +26,106 @@ under the License. </listeners>
<bootstrappers>
- <svnbootstrapper localWorkingCopy="../java" />
- <svnbootstrapper localWorkingCopy="../gentools" />
+ <svnbootstrapper localWorkingCopy="../java"/>
+ <svnbootstrapper localWorkingCopy="../gentools"/>
</bootstrappers>
<modificationset quietperiod="30">
- <buildstatus logdir="logs/qpid-cpp-trunk/"/>
- <buildstatus logdir="logs/bdbstore-cpp-trunk/"/>
+ <buildstatus logdir="logs/qpid-cpp-trunk/"/>
+ <buildstatus logdir="logs/bdbstore-cpp-trunk/"/>
<svn localWorkingCopy="../java"/>
<svn localWorkingCopy="../gentools"/>
</modificationset>
<schedule interval="3600">
- <composite>
-
- <exec timeout="1800"
- command="/bin/bash"
- args="../cc/scripts/javaconfig.sh"
- workingdir="../java" />
- <!-- in VM 0.8 -->
- <ant target="clean test"
- uselogger="false"
- antworkingdir="../java">
- <jvmarg arg="-Xmx1024m"/>
- <property name="profile" value="java"/>
- </ant>
-
- <ant target="report"
- uselogger="false"
- antworkingdir="../java">
- <jvmarg arg="-Xmx1024m"/>
- </ant>
- <exec timeout="1800"
- command="/bin/bash"
- args="../cc/scripts/javareport.sh 08"
- workingdir="../java" />
-
- <!-- cpp -->
- <ant target="test"
- uselogger="false"
- antworkingdir="../java">
- <jvmarg arg="-Xmx1024m"/>
- <property name="profile" value="cpp"/>
- </ant>
- <ant target="report"
- uselogger="false"
- antworkingdir="../java">
- <jvmarg arg="-Xmx1024m"/>
- </ant>
- <exec timeout="1800"
- command="/bin/bash"
- args="../cc/scripts/javareport.sh cpp"
- workingdir="../java" />
-
- <!-- cpp no prefetch -->
- <ant target="test"
- uselogger="false"
- antworkingdir="../java">
- <jvmarg arg="-Xmx1024m"/>
- <property name="profile" value="cpp.noprefetch"/>
- </ant>
- <ant target="report"
- uselogger="false"
- antworkingdir="../java">
- <jvmarg arg="-Xmx1024m"/>
- </ant>
- <exec timeout="1800"
- command="/bin/bash"
- args="../cc/scripts/javareport.sh cpp-noprefetch"
- workingdir="../java" />
-
- <!-- make the release
- <ant target="release"
- uselogger="false"
- antworkingdir="../java">
- <jvmarg arg="-Xmx1024m"/>
- </ant>
- -->
- </composite>
- </schedule>
+ <composite>
+
+ <exec timeout="1800"
+ command="/bin/bash"
+ args="../cc/scripts/javaconfig.sh"
+ workingdir="../java"/>
+ <!-- in VM 0.8 -->
+ <ant target="clean test"
+ uselogger="false"
+ antworkingdir="../java">
+ <jvmarg arg="-Xmx1024m"/>
+ </ant>
+
+ <ant target="report"
+ uselogger="false"
+ antworkingdir="../java">
+ <jvmarg arg="-Xmx1024m"/>
+ </ant>
+ <exec timeout="1800"
+ command="/bin/bash"
+ args="../cc/scripts/javareport.sh 08"
+ workingdir="../java"/>
+
+ <!-- cpp -->
+ <ant target="test"
+ uselogger="false"
+ antworkingdir="../java">
+ <jvmarg arg="-Xmx1024m"/>
+ <property name="profile" value="cpp"/>
+ </ant>
+ <ant target="report"
+ uselogger="false"
+ antworkingdir="../java">
+ <jvmarg arg="-Xmx1024m"/>
+ </ant>
+ <exec timeout="1800"
+ command="/bin/bash"
+ args="../cc/scripts/javareport.sh cpp"
+ workingdir="../java"/>
+
+ <!-- cpp no prefetch -->
+ <ant target="test"
+ uselogger="false"
+ antworkingdir="../java">
+ <jvmarg arg="-Xmx1024m"/>
+ <property name="profile" value="cpp.noprefetch"/>
+ </ant>
+ <ant target="report"
+ uselogger="false"
+ antworkingdir="../java">
+ <jvmarg arg="-Xmx1024m"/>
+ </ant>
+ <exec timeout="1800"
+ command="/bin/bash"
+ args="../cc/scripts/javareport.sh cpp-noprefetch"
+ workingdir="../java"/>
+
+ <!-- make the release
+ <ant target="release"
+ uselogger="false"
+ antworkingdir="../java">
+ <jvmarg arg="-Xmx1024m"/>
+ </ant>
+ -->
+ </composite>
+ </schedule>
<publishers>
+ <artifactspublisher dest="artifacts/${project.name}"
+ subdirectory="report_08"
+ dir="../java/build/report_08"/>
- <artifactspublisher dest="artifacts/${project.name}"
- subdirectory="report_08"
- dir="../java/build/report_08"/>
-
- <artifactspublisher dest="artifacts/${project.name}"
- subdirectory="report_cpp"
- dir="../java/build/report_cpp"/>
+ <artifactspublisher dest="artifacts/${project.name}"
+ subdirectory="report_cpp"
+ dir="../java/build/report_cpp"/>
<artifactspublisher dest="artifacts/${project.name}"
subdirectory="report_cpp-noprefetch"
dir="../java/build/report_cpp-noprefetch"/>
-<!--
- <email subjectprefix="CC report fro ${project.name}" mailhost="localhost"
- returnaddress="my_email"
- buildresultsurl="http://my_host:8080/buildresults/${project.name}"
- skipusers="false"
- reportsuccess="fixes"
+
+ <email subjectprefix="${mail.subject}: ${project.name}" mailhost="${mail.host}"
+ returnaddress="${mail.returnaddress}"
+ buildresultsurl="http://${env.HOSTNAME}:8080/buildresults/${project.name}"
+ skipusers="false"
+ reportsuccess="fixes"
spamwhilebroken="true">
- <always address="email"/>
- <map alias="name" address="email"/>
+ <always address="${mail.list}"/>
</email>
--->
</publishers>
-
</project>
</cruisecontrol>
diff --git a/cc/config/java/cpp.noprefetch.testprofile b/cc/config/java/cpp.noprefetch.testprofile index 3654e271dc..d4176e9efd 100644 --- a/cc/config/java/cpp.noprefetch.testprofile +++ b/cc/config/java/cpp.noprefetch.testprofile @@ -1,18 +1,4 @@ broker.version=0-10 broker=${project.root}/../cpp/src/qpidd --data-dir ${build.data} -t --load-module store_home/lib/.libs/libbdbstore.so --auth no --no-module-dir -broker.clean=${project.root}/clean-dir ${build.data} -broker.ready=Listening on TCP port -java.naming.provider.url=${project.root}/test-provider.properties max_prefetch=0 -test.excludes=true -test.excludesfile=${project.root}/cppNoPrefetchExcludeList -log=info -amqj.logging.level=$log -root.logging.level=$log -log4j.configuration=file://${project.root}/log4j-test.xml -test.fork=no -test.mem=512M -test=*Test -haltonfailure=no -haltonerror=no -exclude.modules=systests
\ No newline at end of file +test.excludesfile=${project.root}/cppNoPrefetchExcludeList
\ No newline at end of file diff --git a/cc/config/java/cpp.testprofile b/cc/config/java/cpp.testprofile index 15db7f93bc..7dcf75bac9 100644 --- a/cc/config/java/cpp.testprofile +++ b/cc/config/java/cpp.testprofile @@ -1,18 +1,3 @@ broker.version=0-10 broker=${project.root}/../cpp/src/qpidd --data-dir ${build.data} -t --load-module store_home/lib/.libs/libbdbstore.so --auth no --no-module-dir -broker.clean=${project.root}/clean-dir ${build.data} -broker.ready=Listening on TCP port -java.naming.provider.url=${project.root}/test-provider.properties -max_prefetch=1000 -test.excludes=true -test.excludesfile=${project.root}/cppExcludeList -log=info -amqj.logging.level=$log -root.logging.level=$log -log4j.configuration=file://${project.root}/log4j-test.xml -test.fork=no -test.mem=512M -test=*Test -haltonfailure=no -haltonerror=no -exclude.modules=systests +test.excludesfile=${project.root}/010ExcludeList-store diff --git a/cc/config/java/cppExcludeList b/cc/config/java/cppExcludeList deleted file mode 100644 index ff93dd00b8..0000000000 --- a/cc/config/java/cppExcludeList +++ /dev/null @@ -1,15 +0,0 @@ -org.apache.qpid.test.unit.client.channelclose.ChannelCloseTest#* -org.apache.qpid.client.ResetMessageListenerTest#* -// those tests should be run with prefetch off -org.apache.qpid.client.MessageListenerMultiConsumerTest#testRecieveC2Only -org.apache.qpid.client.MessageListenerMultiConsumerTest#testRecieveBoth -org.apache.qpid.test.unit.xa.TopicTest#testMultiMessagesDurSubCrash -org.apache.qpid.test.unit.xa.TopicTest#testMigrateDurableSubscriber -// those tests need durable subscribe states to be persisted -org.apache.qpid.test.unit.topic.DurableSubscriptionTest#testDurSubRestoredAfterNonPersistentMessageSent -org.apache.qpid.test.unit.ct.DurableSubscriberTest#testDurSubRestoresMessageSelector -// the 0.10 c++ broker does not implement forget -org.apache.qpid.test.unit.xa.FaultTest#testForget -// removed because of bug 445500 -// org.apache.qpid.test.unit.topic.DurableSubscriptionTest#testDurabilityAUTOACK -// org.apache.qpid.test.unit.topic.DurableSubscriptionTest#testDurabilityNOACKSessionPerConnection
\ No newline at end of file diff --git a/cc/config/java/cppNoPrefetchExcludeList b/cc/config/java/cppNoPrefetchExcludeList index 173d837ab1..311c94d5ec 100644 --- a/cc/config/java/cppNoPrefetchExcludeList +++ b/cc/config/java/cppNoPrefetchExcludeList @@ -1,18 +1,51 @@ -// those tests use 0.8 semantics org.apache.qpid.test.unit.client.channelclose.ChannelCloseTest#* org.apache.qpid.client.ResetMessageListenerTest#* org.apache.qpid.test.unit.transacted.TransactedTest#testRollback // those tests need durable subscribe states to be persisted org.apache.qpid.test.unit.topic.DurableSubscriptionTest#testDurSubRestoredAfterNonPersistentMessageSent org.apache.qpid.test.unit.ct.DurableSubscriberTest#testDurSubRestoresMessageSelector +//These tests are for the java broker +org.apache.qpid.server.security.acl.SimpleACLTest#* +org.apache.qpid.server.plugins.PluginTest#* // This test is not finished org.apache.qpid.test.testcases.TTLTest#* +// Those tests require failover support +org.apache.qpid.test.client.QueueBrowserAutoAckTest#testFailoverAsQueueBrowserCreated +org.apache.qpid.test.client.QueueBrowserAutoAckTest#testFailoverWithQueueBrowser +org.apache.qpid.test.client.QueueBrowserClientAckTest#testFailoverAsQueueBrowserCreated +org.apache.qpid.test.client.QueueBrowserClientAckTest#testFailoverWithQueueBrowser +org.apache.qpid.test.client.QueueBrowserDupsOkTest#testFailoverAsQueueBrowserCreated +org.apache.qpid.test.client.QueueBrowserDupsOkTest#testFailoverWithQueueBrowser +org.apache.qpid.test.client.QueueBrowserNoAckTest#testFailoverAsQueueBrowserCreated +org.apache.qpid.test.client.QueueBrowserNoAckTest#testFailoverWithQueueBrowser +org.apache.qpid.test.client.QueueBrowserPreAckTest#testFailoverAsQueueBrowserCreated +org.apache.qpid.test.client.QueueBrowserPreAckTest#testFailoverWithQueueBrowser +org.apache.qpid.test.client.QueueBrowserTransactedTest#testFailoverAsQueueBrowserCreated +org.apache.qpid.test.client.QueueBrowserTransactedTest#testFailoverWithQueueBrowser +org.apache.qpid.test.testcases.FailoverTest#* +org.apache.qpid.test.client.failover.FailoverTest#* +// Those tests are testing 0.8 specific semantics +org.apache.qpid.test.testcases.ImmediateMessageTest#test_QPID_517_ImmediateFailsConsumerDisconnectedNoTxP2P +org.apache.qpid.test.testcases.ImmediateMessageTest#test_QPID_517_ImmediateFailsConsumerDisconnectedTxP2P +org.apache.qpid.test.testcases.ImmediateMessageTest#test_QPID_517_ImmediateFailsNoRouteNoTxP2P +org.apache.qpid.test.testcases.ImmediateMessageTest#test_QPID_517_ImmediateFailsNoRouteTxP2P +org.apache.qpid.test.testcases.ImmediateMessageTest#test_QPID_517_ImmediateFailsConsumerDisconnectedNoTxPubSub +org.apache.qpid.test.testcases.ImmediateMessageTest#test_QPID_517_ImmediateFailsConsumerDisconnectedTxPubSub +org.apache.qpid.test.testcases.ImmediateMessageTest#test_QPID_517_ImmediateFailsNoRouteNoTxPubSub +org.apache.qpid.test.testcases.ImmediateMessageTest#test_QPID_517_ImmediateFailsNoRouteTxPubSub +org.apache.qpid.test.testcases.MandatoryMessageTest#test_QPID_508_MandatoryFailsNoRouteNoTxP2P +org.apache.qpid.test.testcases.MandatoryMessageTest#test_QPID_508_MandatoryFailsNoRouteTxP2P +org.apache.qpid.test.testcases.MandatoryMessageTest#test_QPID_508_MandatoryFailsNoRouteNoTxPubSub +org.apache.qpid.test.testcases.MandatoryMessageTest#test_QPID_508_MandatoryFailsNoRouteTxPubSub +org.apache.qpid.test.client.FlowControlTest#* +org.apache.qpid.test.unit.client.connection.ConnectionTest#testDefaultExchanges +org.apache.qpid.test.unit.client.connection.ConnectionTest#testUnresolvedVirtualHostFailure // the 0.10 c++ broker does not implement forget org.apache.qpid.test.unit.xa.FaultTest#testForget -// See Bug 443031 -org.apache.qpid.test.unit.xa.TopicTest#testMultiMessagesDurSubCrash -// removed because of bug 445500 -// org.apache.qpid.test.unit.topic.DurableSubscriptionTest#testDurabilityAUTOACK -// org.apache.qpid.test.unit.topic.DurableSubscriptionTest#testDurabilityNOACKSessionPerConnection -// trace sent to Gordon -// org.apache.qpid.test.unit.basic.SelectorTest#*
\ No newline at end of file +// the 0-10 c++ broker does not implement priority / this test depends on a Java broker extension for queue creation +org.apache.qpid.server.queue.PriorityTest +//this test checks explicitly for 0-8 flow control semantics +org.apache.qpid.test.client.FlowControlTest +// The default cpp.testprofile does not start the cpp broker with authentication so this test will fail. +org.apache.qpid.test.unit.client.connection.ConnectionTest#testPasswordFailureConnection + diff --git a/cc/config/java/java.testprofile b/cc/config/java/java.testprofile deleted file mode 100644 index 6f988dc261..0000000000 --- a/cc/config/java/java.testprofile +++ /dev/null @@ -1,17 +0,0 @@ -broker.version=0-8 -broker=vm -broker.clean=${project.root}/clean-dir ${build.data} -java.naming.provider.url=${project.root}/test-provider.properties -test.excludes=true -test.excludesfile=${project.root}/javaExcludeList -log=info -max_prefetch=1000 -amqj.logging.level=$log -root.logging.level=$log -log4j.configuration=file:///${project.root}/log4j-test.xml -test.fork=no -test.mem=512M -test=*Test -haltonfailure=no -haltonerror=no -exclude.modules=systests
\ No newline at end of file diff --git a/cc/config/java/javaExcludeList b/cc/config/java/javaExcludeList deleted file mode 100644 index 5e5bf715ad..0000000000 --- a/cc/config/java/javaExcludeList +++ /dev/null @@ -1,13 +0,0 @@ -org.apache.qpid.test.unit.xa.QueueTest#* -org.apache.qpid.test.unit.xa.TopicTest#* -org.apache.qpid.test.unit.xa.FaultTest#* -org.apache.qpid.test.unit.ct.DurableSubscriberTests#* -// those tests are failing see: QPID- -org.apache.qpid.test.unit.topic.TopicSessionTest#testNoLocal -// known issue -org.apache.qpid.test.unit.topic.DurableSubscriptionTest#testDurableWithInvalidSelector -// Those tests are not finished -org.apache.qpid.test.testcases.TTLTest#* -org.apache.qpid.test.testcases.FailoverTest#* -// See qpid-1144 -org.apache.qpid.test.testcases.ImmediateMessageTest#* diff --git a/cc/config/java/jndi.properties b/cc/config/java/jndi.properties new file mode 100644 index 0000000000..c7e5f84d5a --- /dev/null +++ b/cc/config/java/jndi.properties @@ -0,0 +1,21 @@ +java.naming.factory.initial = org.apache.qpid.jndi.PropertiesFileInitialContextFactory + +connectionfactory.QueueConnectionFactory = amqp://username:password@topicClientid/test?brokerlist='tcp://localhost:qpid_port' +connectionfactory.TopicConnectionFactory = amqp://username:password@topicClientid/test?brokerlist='tcp://localhost:qpid_port' +connectionfactory.jms/DURABLE_SUB_CONNECTION_FACTORY = amqp://username:password@duralbeTopicClientid/test?brokerlist='tcp://localhost:qpid_port' +connectionfactory.jms/MyTopicConnectionFactory = amqp://username:password@myTopicClientid/test?brokerlist='tcp://localhost:qpid_port' +connectionfactory.jms/TopicConnectionFactory = amqp://username:password@jmsTopicClientid/test?brokerlist='tcp://localhost:qpid_port' + +queue.MY_QUEUE=MY_QUEUE +queue.MY_QUEUE2=MY_QUEUE2 +queue.testQ0=testQ0 +queue.testQ1=testQ1 +queue.testQ2=testQ2 +queue.testQueue2=testQueue2 +queue.Q2=Q2 + +topic.MY_TOPIC=MY_TOPIC +topic.MY_TOPIC1=MY_TOPIC1 + +destination.direct = direct://amq.direct//directQueue + diff --git a/cc/scripts/build.xml b/cc/scripts/build.xml index a9e91e21ce..2144020017 100644 --- a/cc/scripts/build.xml +++ b/cc/scripts/build.xml @@ -19,8 +19,12 @@ under the License. <project name="run-tests" default="cpp-perftests" basedir="."> -<target name="cpp-perftests"> - <exec executable="./cppbuild-perftests.sh" failonerror="true"/> -</target> - + <target name="cpp-perftests"> + <exec executable="./cppbuild-perftests.sh" failonerror="true"/> + </target> + + <target name="tck"> + <exec executable="./javajmstck.sh"/> + </target> + </project> diff --git a/cc/scripts/javaconfig.sh b/cc/scripts/javaconfig.sh index 74e5063bab..37677cf93d 100755 --- a/cc/scripts/javaconfig.sh +++ b/cc/scripts/javaconfig.sh @@ -22,4 +22,7 @@ sed "s#store_home#$CPPSTORE_HOME#g" $CC_HOME/cc/config/java/cpp.noprefetch.testprofile > "$CC_HOME/java/"/cpp.noprefetch.testprofile sed "s#store_home#$CPPSTORE_HOME#g" $CC_HOME/cc/config/java/cpp.testprofile > "$CC_HOME/java"/cpp.testprofile cp $CC_HOME/cc/config/java/*ExcludeList $CC_HOME/java/. -cp $CC_HOME/cc/config/java/java.testprofile $CC_HOME/java/.
\ No newline at end of file +QPID_JARS=`find "$CC_HOME/java/build/lib" -name '*.jar' | tr '\n' ":"` +QPID_JARS=local.classes=$QPID_JARS +sed "s#local.classes=.*#$QPID_JARS#g" $TS_HOME/bin/build.properties > "$TS_HOME/bin"/build.properties-new +mv $TS_HOME/bin/build.properties-new $TS_HOME/bin/build.properties
\ No newline at end of file diff --git a/cc/scripts/javajmstck.sh b/cc/scripts/javajmstck.sh new file mode 100644 index 0000000000..1db1e01ccf --- /dev/null +++ b/cc/scripts/javajmstck.sh @@ -0,0 +1,62 @@ +#!/bin/bash + +cleanup(){ + echo "kill any existing broker instance" + stopBroker + rm -rf $CC_HOME/jmstck-data/* +} + +runBroker(){ + echo "******************************************************" + echo "Starting C++ broker" + ulimit -c unlimited + $CC_HOME/cpp/src/qpidd -t -d --data-dir $CC_HOME/jmstck-data --load-module=$CPPSTORE_HOME/lib/.libs/libbdbstore.so --port 0 --auth no --log-output $CC_HOME/jmstck-broker.log --no-module-dir + export QPID_PORT=`grep "Listening on TCP port" $CC_HOME/jmstck-broker.log | tail -n 1 | awk '{print $8}'` + echo " broker running on port: " $QPID_PORT + echo "******************************************************" + sed "s/qpid_port/$QPID_PORT/g" $CC_HOME/cc/config/java/jndi.properties > "$TS_HOME/classes"/jndi.properties +} + +runTck(){ + echo "******************************************************" + echo "Starting the TCK for the $1 iteration" + echo "******************************************************" + cd $TS_HOME/bin + $TS_HOME/bin/tsant runclient -Dwork.dir=work -Dreport.dir=report 2&>1 > $TS_HOME/tck$1.log + echo "******************************************************" + echo "TCK finished the $1 iteration" + echo "******************************************************" +} + +printResults(){ + TESTS_STR=`grep -a "\[java\] Completed running [0-9]* tests" $TS_HOME/tck$1.log` + PASSED_STR=`grep -a "\[java\] Number of Tests Passed =" $TS_HOME/tck$1.log` + FAILED_STR=`grep -a "Some tests did not pass" $TS_HOME/tck$1.log` + echo "-----------------------------------------" + echo "TCK run #$1 results:" + echo $TESTS_STR + echo $PASSED_STR + echo $FAILED_STR + if [ "$FAILED_STR" != "" ]; then + echo "SOME TCK FAILURES DETECTED: " + fi + echo "------------------------------------------" +} + +stopBroker(){ + echo "************************" + echo "Stopping the C++ broker" + echo "************************" + $CC_HOME/cpp/src/qpidd -q -p $QPID_PORT +} + +cleanup +counter=0 +runBroker +for j in 1 2 +do + counter=`expr $counter + 1` + runTck $counter + printResults $counter +done +cleanup diff --git a/java/010ExcludeList b/java/010ExcludeList index d7287abc68..048deb7e2c 100644 --- a/java/010ExcludeList +++ b/java/010ExcludeList @@ -4,6 +4,7 @@ org.apache.qpid.client.ResetMessageListenerTest#* org.apache.qpid.client.MessageListenerMultiConsumerTest#testRecieveC2Only org.apache.qpid.client.MessageListenerMultiConsumerTest#testRecieveBoth org.apache.qpid.test.unit.xa.TopicTest#testMigrateDurableSubscriber +org.apache.qpid.test.unit.ack.AcknowledgeTest#* // those tests need durable subscribe states to be persisted org.apache.qpid.test.unit.topic.DurableSubscriptionTest#testDurSubRestoredAfterNonPersistentMessageSent // those tests require broker recovery @@ -47,6 +48,8 @@ org.apache.qpid.test.testcases.MandatoryMessageTest#test_QPID_508_MandatoryFails org.apache.qpid.test.testcases.MandatoryMessageTest#test_QPID_508_MandatoryFailsNoRouteNoTxPubSub org.apache.qpid.test.testcases.MandatoryMessageTest#test_QPID_508_MandatoryFailsNoRouteTxPubSub org.apache.qpid.test.client.FlowControlTest#* +org.apache.qpid.test.unit.client.connection.ConnectionTest#testDefaultExchanges +org.apache.qpid.test.unit.client.connection.ConnectionTest#testUnresolvedVirtualHostFailure // the 0.10 c++ broker does not implement forget org.apache.qpid.test.unit.xa.FaultTest#testForget // the 0-10 c++ broker does not implement priority / this test depends on a Java broker extension for queue creation diff --git a/java/010ExcludeList-store b/java/010ExcludeList-store index 9d39238f84..47ba87589e 100644 --- a/java/010ExcludeList-store +++ b/java/010ExcludeList-store @@ -5,6 +5,7 @@ org.apache.qpid.client.MessageListenerMultiConsumerTest#testRecieveC2Only org.apache.qpid.client.MessageListenerMultiConsumerTest#testRecieveBoth org.apache.qpid.test.unit.xa.TopicTest#testMultiMessagesDurSubCrash org.apache.qpid.test.unit.xa.TopicTest#testMigrateDurableSubscriber +org.apache.qpid.test.unit.ack.AcknowledgeTest#* // those tests need durable subscribe states to be persisted org.apache.qpid.test.unit.topic.DurableSubscriptionTest#testDurSubRestoredAfterNonPersistentMessageSent org.apache.qpid.test.unit.ct.DurableSubscriberTest#testDurSubRestoresMessageSelector @@ -27,6 +28,7 @@ org.apache.qpid.test.client.QueueBrowserPreAckTest#testFailoverWithQueueBrowser org.apache.qpid.test.client.QueueBrowserTransactedTest#testFailoverAsQueueBrowserCreated org.apache.qpid.test.client.QueueBrowserTransactedTest#testFailoverWithQueueBrowser org.apache.qpid.test.testcases.FailoverTest#* +org.apache.qpid.test.client.failover.FailoverTest#* // Those tests are testing 0.8 specific semantics org.apache.qpid.test.testcases.ImmediateMessageTest#test_QPID_517_ImmediateFailsConsumerDisconnectedNoTxP2P org.apache.qpid.test.testcases.ImmediateMessageTest#test_QPID_517_ImmediateFailsConsumerDisconnectedTxP2P @@ -41,6 +43,8 @@ org.apache.qpid.test.testcases.MandatoryMessageTest#test_QPID_508_MandatoryFails org.apache.qpid.test.testcases.MandatoryMessageTest#test_QPID_508_MandatoryFailsNoRouteNoTxPubSub org.apache.qpid.test.testcases.MandatoryMessageTest#test_QPID_508_MandatoryFailsNoRouteTxPubSub org.apache.qpid.test.client.FlowControlTest#* +org.apache.qpid.test.unit.client.connection.ConnectionTest#testDefaultExchanges +org.apache.qpid.test.unit.client.connection.ConnectionTest#testUnresolvedVirtualHostFailure // the 0.10 c++ broker does not implement forget org.apache.qpid.test.unit.xa.FaultTest#testForget // the 0-10 c++ broker does not implement priority / this test depends on a Java broker extension for queue creation |
