[jboss-svn-commits] JBL Code SVN: r37402 - in labs/jbossesb/branches/JBESB_4_10_CP: product/rosetta and 2 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri Aug 12 10:48:26 EDT 2011
Author: tcunning
Date: 2011-08-12 10:48:25 -0400 (Fri, 12 Aug 2011)
New Revision: 37402
Modified:
labs/jbossesb/branches/JBESB_4_10_CP/product/build.xml
labs/jbossesb/branches/JBESB_4_10_CP/product/esb-config.xml
labs/jbossesb/branches/JBESB_4_10_CP/product/rosetta/build.xml
labs/jbossesb/branches/JBESB_4_10_CP/product/rosetta/tests/build.xml
labs/jbossesb/branches/JBESB_4_10_CP/qa/test.properties
Log:
JBESB-2272
Commit patch for external binary testing.
Modified: labs/jbossesb/branches/JBESB_4_10_CP/product/build.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_10_CP/product/build.xml 2011-08-12 14:09:09 UTC (rev 37401)
+++ labs/jbossesb/branches/JBESB_4_10_CP/product/build.xml 2011-08-12 14:48:25 UTC (rev 37402)
@@ -13,8 +13,6 @@
<fail unless="JDK_VERSION_OK"
message="JBoss ESB requires jdk1.5 or jdk1.6 to build."/>
- <import file="esb-config.xml"/>
-
<!-- Set default properties filename -->
<property name="org.jboss.esb.properties" location="product.properties"/>
@@ -23,6 +21,8 @@
<!-- Load Build Properties File -->
<property file="${org.jboss.esb.properties}"/>
+ <import file="esb-config.xml"/>
+
<!-- default memory settings-->
<property name="org.jboss.esb.jvmarg" value="-Xmx512m -Xms256m"/>
Modified: labs/jbossesb/branches/JBESB_4_10_CP/product/esb-config.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_10_CP/product/esb-config.xml 2011-08-12 14:09:09 UTC (rev 37401)
+++ labs/jbossesb/branches/JBESB_4_10_CP/product/esb-config.xml 2011-08-12 14:48:25 UTC (rev 37402)
@@ -9,7 +9,6 @@
<property name="esb.ftp.server.location" location="${esb.ftp.location}/build"/>
<property name="esb.ftp.server.name" value="ftp-server.sar"/>
- <property name="agent.jvmarg" value="-Xms128m -Xmx512m -XX:PermSize=200m -XX:MaxPermSize=500m"/>
<property name="org.jboss.esb.server.config" value="default"/>
<condition property="esb.ftp.config.all">
@@ -39,6 +38,13 @@
</and>
</condition>
+ <condition property="esb.qa.external">
+ <or>
+ <equals casesensitive="false" arg1="${org.jboss.esb.qa.external}" arg2="yes" />
+ <equals casesensitive="false" arg1="${org.jboss.esb.qa.external}" arg2="true" />
+ </or>
+ </condition>
+
<fail if="esb.ftp.config.fail" message="All FTP configuration parameters must be set"/>
<macrodef name="start-server">
@@ -46,7 +52,11 @@
<attribute name="serverConfig"/>
<element name="serverElements" implicit="yes" optional="true"/>
<sequential>
+ <condition property="agent.jvmarg" value="-Xms1303m -Xmx1303m -XX:PermSize=512m -XX:MaxPermSize=512m" else="-Xms128m -Xmx512m -XX:PermSize=200m -XX:MaxPermSize=500m">
+ <isset property="esb.qa.external" />
+ </condition>
<echo message="Starting local ESB server: @{serverHome}/server/@{serverConfig}"/>
+ <echo message="JVM arguments: ${agent.jvmarg}"/>
<path id="endorsed.dirs">
<pathelement path="${server.endorsed}"/>
<pathelement path="${server.test.endorsed}"/>
@@ -61,16 +71,18 @@
<jvmarg line="-Dxb.builder.useUnorderedSequence=true"/>
<arg value="-c"/>
<arg value="@{serverConfig}"/>
+ <jvmarg line="-Djava.awt.headless=true" />
+ <jvmarg line="-Djava.net.preferIPv4Stack=true" />
<serverElements/>
</java>
</sequential>
</macrodef>
-
+
<macrodef name="stop-server">
<attribute name="serverHome"/>
<sequential>
<echo message="Stopping local ESB server"/>
- <java classname="org.jboss.Shutdown" fork="true"
+ <java classname="org.jboss.Shutdown" fork="true"
dir="@{serverHome}/bin">
<classpath>
<pathelement location="@{serverHome}/bin/shutdown.jar"/>
@@ -82,7 +94,7 @@
</java>
</sequential>
</macrodef>
-
+
<macrodef name="wait-on-server">
<attribute name="seconds" default="180"/>
<sequential>
@@ -212,7 +224,7 @@
<copy todir="${esb.deploy-dir}/${esb.ftp.server.name}/res/conf"
file="${esb.config.location}/ftpd.properties" overwrite="true"/>
</target>
-
+ <!-- unless="esb.qa.external" -->
<target name="esb.init" depends="esb.init-app-server, esb.init-esb-server, esb.init-ftp-server"
description="target for initialising properties">
<path id="server.classpath">
Modified: labs/jbossesb/branches/JBESB_4_10_CP/product/rosetta/build.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_10_CP/product/rosetta/build.xml 2011-08-12 14:09:09 UTC (rev 37401)
+++ labs/jbossesb/branches/JBESB_4_10_CP/product/rosetta/build.xml 2011-08-12 14:48:25 UTC (rev 37402)
@@ -157,7 +157,7 @@
<target name="recompile" depends="clean,org.jboss.esb.rosetta.compile"
description="Clean and compile"/>
- <target name="jar" depends="org.jboss.esb.rosetta.compile" description="Assemble jar files">
+ <target name="jar" depends="org.jboss.esb.rosetta.compile" unless="esb.qa.external" description="Assemble jar files">
<delete file="${org.jboss.esb.rosetta.distrib.dir}/lib/${org.jboss.esb.rosetta.jar.name}.jar" />
<delete file="${org.jboss.esb.rosetta.distrib.dir}/lib/${org.jboss.esb.registry.jar.name}.jar" />
Modified: labs/jbossesb/branches/JBESB_4_10_CP/product/rosetta/tests/build.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_10_CP/product/rosetta/tests/build.xml 2011-08-12 14:09:09 UTC (rev 37401)
+++ labs/jbossesb/branches/JBESB_4_10_CP/product/rosetta/tests/build.xml 2011-08-12 14:48:25 UTC (rev 37402)
@@ -13,6 +13,15 @@
<property environment="env"/>
<property name="org.jboss.esb.lib.dir" location="${org.jboss.esb.root.dir}/build/lib"/>
<property name="org.jboss.esb.ext.lib.dir" location="${org.jboss.esb.root.dir}/lib/ext"/>
+ <!-- Set of properties for running with external ESB -->
+ <property name="org.jboss.esb.server.common.lib.dir" location="${org.jboss.esb.server.home}/common/lib" />
+ <property name="org.jboss.esb.server.client.lib.dir" location="${org.jboss.esb.server.home}/client" />
+ <property name="org.jboss.esb.server.lib.dir" location="${org.jboss.esb.server.home}/lib" />
+ <property name="org.jboss.esb.server.lib.endorsed.dir" location="${org.jboss.esb.server.home}/lib/endorsed" />
+ <property name="org.jboss.esb.server.config.lib.dir" location="${org.jboss.esb.server.home}/server/${org.jboss.esb.test.server.config}/lib" />
+ <property name="org.jboss.esb.server.esb.deployer.lib.dir" location="${org.jboss.esb.server.home}/server/${org.jboss.esb.test.server.config}/deployers/esb.deployer/lib" />
+ <property name="org.jboss.esb.server.jbossesb.lib.dir" location="${org.jboss.esb.server.home}/server/${org.jboss.esb.test.server.config}/deploy/jbossesb.esb" />
+ <property name="org.jboss.esb.server.uddi.xml" location="${org.jboss.esb.server.home}/samples/quickstarts/conf/registry" />
<!-- Set deployment properties filename -->
<property name="org.jboss.esb.deployment.properties" location="../../install/deployment.properties"/>
<!-- Load deployment properties File -->
@@ -47,6 +56,25 @@
<pathelement location="${org.jboss.esb.root.dir}/etc/schemas/xml"/>
<pathelement location="${org.jboss.esb.root.dir}/etc/test/registry/"/>
</path>
+ <path id="org.jboss.esb.external.tests.classpath">
+ <!-- Libraries in the external ESB -->
+ <fileset dir="${org.jboss.esb.server.common.lib.dir}" includes="**/*.jar" />
+ <fileset dir="${org.jboss.esb.server.client.lib.dir}" includes="**/*.jar" />
+ <fileset dir="${org.jboss.esb.server.lib.dir}" includes="**/*.jar" />
+ <fileset dir="${org.jboss.esb.server.lib.endorsed.dir}" includes="**/*.jar" />
+ <fileset dir="${org.jboss.esb.server.config.lib.dir}" includes="**/*.jar" />
+ <fileset dir="${org.jboss.esb.server.esb.deployer.lib.dir}" includes="**/*.jar" />
+ <fileset dir="${org.jboss.esb.server.jbossesb.lib.dir}" includes="**/*.jar" />
+ <pathelement location="${org.jboss.esb.server.uddi.xml}" />
+ <!-- Test classes -->
+ <pathelement location="${org.jboss.esb.tests.classes.dir}"/>
+ <!-- Need the tests src folder because there may be non-compiled test resources -->
+ <pathelement location="${org.jboss.esb.module.tests.src.dir}"/>
+ <!-- Utility test libraries -->
+ <fileset dir="${org.jboss.esb.root.dir}/../testlib">
+ <include name="**/*.jar" />
+ </fileset>
+ </path>
<target name="org.jboss.esb.tests.init">
<tstamp>
@@ -80,27 +108,35 @@
<!-- ====================================================================== -->
<target name="org.jboss.esb.rosetta.internal.test">
<!-- Instrument the code for code coverage - using emma... -->
- <delete dir="${org.jboss.esb.module.tests.coverage.dir}" />
- <mkdir dir="${org.jboss.esb.module.classes.instr.dir}" />
- <emma>
- <instr instrpath="${org.jboss.esb.module.classes.dir}"
- destdir="${org.jboss.esb.module.classes.instr.dir}"
- metadatafile="${org.jboss.esb.module.tests.coverage.dir}/coverage.emma" />
- </emma>
+ <antcall target="-internal.integration.test.emma.install" />
<!-- Run the tests -->
<antcall target="org.jboss.esb.services.internal.test.exec"/>
<!-- Generate the coverage report -->
- <emma>
- <report sourcepath="${org.jboss.esb.module.src.dir}" sort="+block,+name,+method,+class" metrics="method:70,block:80,line:80,class:100">
- <fileset dir="${org.jboss.esb.module.tests.coverage.dir}" >
- <include name="*.emma" />
- </fileset>
- <html outfile="${org.jboss.esb.module.tests.coverage.dir}/index.html" depth="method" columns="name,line,class,method,block"/>
- </report>
- </emma>
+ <antcall target="-internal.integration.test.emma.report" />
</target>
+
+ <target name="-internal.integration.test.emma.install" unless="esb.qa.external">
+ <delete dir="${org.jboss.esb.module.tests.coverage.dir}" />
+ <mkdir dir="${org.jboss.esb.module.classes.instr.dir}" />
+ <emma>
+ <instr instrpath="${org.jboss.esb.module.classes.dir}"
+ destdir="${org.jboss.esb.module.classes.instr.dir}"
+ metadatafile="${org.jboss.esb.module.tests.coverage.dir}/coverage.emma" />
+ </emma>
+ </target>
+
+ <target name="-internal.integration.test.emma.report" unless="esb.qa.external">
+ <emma>
+ <report sourcepath="${org.jboss.esb.module.src.dir}" sort="+block,+name,+method,+class" metrics="method:70,block:80,line:80,class:100">
+ <fileset dir="${org.jboss.esb.module.tests.coverage.dir}" >
+ <include name="*.emma" />
+ </fileset>
+ <html outfile="${org.jboss.esb.module.tests.coverage.dir}/index.html" depth="method" columns="name,line,class,method,block"/>
+ </report>
+ </emma>
+ </target>
<target name="create.endorsed.property">
<condition property="endorsed" else="${java.endorsed.dirs}" value="${java.endorsed.dirs}${path.separator}${org.jboss.esb.ext.lib.dir}/endorsed">
@@ -196,29 +232,37 @@
<!-- INTEGRATION T E S T -->
<!-- ====================================================================== -->
<target name="org.jboss.esb.rosetta.internal.integration.test">
- <!-- Instrument the code for code coverage - using emma... -->
- <delete dir="${org.jboss.esb.module.tests.coverage.dir}" />
- <mkdir dir="${org.jboss.esb.module.classes.instr.dir}" />
- <emma>
- <instr instrpath="${org.jboss.esb.module.classes.dir}"
- destdir="${org.jboss.esb.module.classes.instr.dir}"
- metadatafile="${org.jboss.esb.module.tests.coverage.dir}/coverage.emma" />
- </emma>
+ <!-- Instrument the code for code coverage - using emma... -->
+ <antcall target="org.jboss.esb.rosetta.internal.integration.test.emma.instrument" />
<!-- Run the tests -->
<antcall target="org.jboss.esb.services.internal.integration.test.exec"/>
<!-- Generate the coverage report -->
- <emma>
- <report sourcepath="${org.jboss.esb.module.src.dir}" sort="+block,+name,+method,+class" metrics="method:70,block:80,line:80,class:100">
- <fileset dir="${org.jboss.esb.module.tests.coverage.dir}" >
- <include name="*.emma" />
- </fileset>
- <html outfile="${org.jboss.esb.module.tests.coverage.dir}/index.html" depth="method" columns="name,line,class,method,block"/>
- </report>
- </emma>
+ <antcall target="org.jboss.esb.rosetta.internal.integration.test.emma.report" />
</target>
+ <target name="org.jboss.esb.rosetta.internal.integration.test.emma.instrument" unless="esb.qa.external">
+ <delete dir="${org.jboss.esb.module.tests.coverage.dir}" />
+ <mkdir dir="${org.jboss.esb.module.classes.instr.dir}" />
+ <emma>
+ <instr instrpath="${org.jboss.esb.module.classes.dir}"
+ destdir="${org.jboss.esb.module.classes.instr.dir}"
+ metadatafile="${org.jboss.esb.module.tests.coverage.dir}/coverage.emma" />
+ </emma>
+ </target>
+
+ <target name="org.jboss.esb.rosetta.internal.integration.test.emma.report" unless="esb.qa.external">
+ <emma>
+ <report sourcepath="${org.jboss.esb.module.src.dir}" sort="+block,+name,+method,+class" metrics="method:70,block:80,line:80,class:100">
+ <fileset dir="${org.jboss.esb.module.tests.coverage.dir}" >
+ <include name="*.emma" />
+ </fileset>
+ <html outfile="${org.jboss.esb.module.tests.coverage.dir}/index.html" depth="method" columns="name,line,class,method,block"/>
+ </report>
+ </emma>
+ </target>
+
<!-- ====================================================================== -->
<!-- INTEGRATION T E S T S -->
<!-- ====================================================================== -->
@@ -230,50 +274,10 @@
<fileset dir="resources/etc/" includes="persistUnitTestDB*"/>
</copy>
- <junit printsummary="yes" haltonerror="${org.jboss.esb.build.haltonerror}" haltonfailure="${org.jboss.esb.build.haltonfailure}" showoutput="no" fork="true">
- <formatter type="plain" usefile="false"/>
- <formatter type="xml"/>
- <batchtest todir="${org.jboss.esb.tests.report.dir}">
- <fileset dir="${org.jboss.esb.module.tests.src.dir}">
- <include name="**/**IntegrationTest.java"/>
- <include name="**/**UnitTest.java"/>
- <include name="**/**FuncTest.java"/>
- </fileset>
- </batchtest>
- <classpath>
- <!-- using instrumented code for code coverage -->
- <pathelement location="${org.jboss.esb.module.classes.instr.dir}"/>
- <pathelement location="${org.jboss.esb.module.src.dir}"/>
- <pathelement location="${org.jboss.esb.tests.classes.dir}"/>
- <!-- Need the tests src folder because there may be non-compiled test resources -->
- <pathelement location="${org.jboss.esb.module.tests.src.dir}"/>
- <fileset dir="${org.jboss.esb.ext.lib.dir}/standalone">
- <include name="*.jar"/>
- </fileset>
- <path refid="org.jboss.esb.tests.base.classpath"/>
- </classpath>
- <!-- emma jvm args -->
- <jvmarg value="-Demma.coverage.out.file=${org.jboss.esb.module.tests.coverage.dir}/coverage.emma" />
- <!--
- Setting the endored lib to lib/ext/endorsed
- This was needed for Java6 as it distributes it's one version of saaj
- -->
- <sysproperty key="java.endorsed.dirs" value="${endorsed}"/>
-
- <!--
- <sysproperty key="org.jboss.esb.test.db.driver" value="${org.jboss.esb.test.db.driver}"/>
- <sysproperty key="org.jboss.esb.test.db.url" value="${org.jboss.esb.test.db.url}"/>
- <sysproperty key="org.jboss.esb.test.db.user" value="${org.jboss.esb.test.db.user}"/>
- <sysproperty key="org.jboss.esb.test.db.password" value="${org.jboss.esb.test.db.password}"/>
- -->
- <sysproperty key="org.jboss.esb.test.ftp.hostname" value="${org.jboss.esb.test.ftp.hostname}"/>
- <sysproperty key="org.jboss.esb.test.ftp.user" value="${org.jboss.esb.test.ftp.user}"/>
- <sysproperty key="org.jboss.esb.test.ftp.pwd" value="${org.jboss.esb.test.ftp.pwd}"/>
- <sysproperty key="org.jboss.esb.test.ftp.dir" value="${org.jboss.esb.test.ftp.dir}"/>
- <sysproperty key="org.jboss.esb.test.persistdb.dir" value="${org.jboss.esb.test.persistdb.dir}"/>
- <sysproperty key="log4j.configuration" value="log4j.xml"/>
- <sysproperty key="jboss.esb.invm.scope.default" value="NONE"/>
- </junit>
+ <!-- Execute jUnit tests. Only one of these targets will be executed depending on the esb.qa.external property -->
+ <antcall target="-esb.services.internal.integration.test.junit" />
+ <antcall target="-esb.services.internal.integration.test.junit.external" />
+
<junitreport>
<fileset dir="${org.jboss.esb.tests.report.dir}">
<include name="*.xml"/>
@@ -282,4 +286,80 @@
<report format="noframes" todir="${org.jboss.esb.tests.report.dir}"/>
</junitreport>
</target>
+
+ <target name="-esb.services.internal.integration.test.junit" unless="esb.qa.external">
+ <junit printsummary="yes" haltonerror="${org.jboss.esb.build.haltonerror}" haltonfailure="${org.jboss.esb.build.haltonfailure}" showoutput="no" fork="true">
+ <formatter type="plain" usefile="false"/>
+ <formatter type="xml"/>
+ <batchtest todir="${org.jboss.esb.tests.report.dir}">
+ <fileset dir="${org.jboss.esb.module.tests.src.dir}">
+ <include name="**/**IntegrationTest.java"/>
+ <include name="**/**UnitTest.java"/>
+ <include name="**/**FuncTest.java"/>
+ </fileset>
+ </batchtest>
+ <classpath>
+ <!-- using instrumented code for code coverage -->
+ <pathelement location="${org.jboss.esb.module.classes.instr.dir}"/>
+ <pathelement location="${org.jboss.esb.module.src.dir}"/>
+ <pathelement location="${org.jboss.esb.tests.classes.dir}"/>
+ <!-- Need the tests src folder because there may be non-compiled test resources -->
+ <pathelement location="${org.jboss.esb.module.tests.src.dir}"/>
+ <fileset dir="${org.jboss.esb.ext.lib.dir}/standalone">
+ <include name="*.jar"/>
+ </fileset>
+ <path refid="org.jboss.esb.tests.base.classpath"/>
+ </classpath>
+ <!-- emma jvm args -->
+ <jvmarg value="-Demma.coverage.out.file=${org.jboss.esb.module.tests.coverage.dir}/coverage.emma" />
+ <!--
+ Setting the endored lib to lib/ext/endorsed
+ This was needed for Java6 as it distributes it's one version of saaj
+ -->
+ <sysproperty key="java.endorsed.dirs" value="${endorsed}"/>
+
+ <!--
+ <sysproperty key="org.jboss.esb.test.db.driver" value="${org.jboss.esb.test.db.driver}"/>
+ <sysproperty key="org.jboss.esb.test.db.url" value="${org.jboss.esb.test.db.url}"/>
+ <sysproperty key="org.jboss.esb.test.db.user" value="${org.jboss.esb.test.db.user}"/>
+ <sysproperty key="org.jboss.esb.test.db.password" value="${org.jboss.esb.test.db.password}"/>
+ -->
+ <sysproperty key="org.jboss.esb.test.ftp.hostname" value="${org.jboss.esb.test.ftp.hostname}"/>
+ <sysproperty key="org.jboss.esb.test.ftp.user" value="${org.jboss.esb.test.ftp.user}"/>
+ <sysproperty key="org.jboss.esb.test.ftp.pwd" value="${org.jboss.esb.test.ftp.pwd}"/>
+ <sysproperty key="org.jboss.esb.test.ftp.dir" value="${org.jboss.esb.test.ftp.dir}"/>
+ <sysproperty key="org.jboss.esb.test.persistdb.dir" value="${org.jboss.esb.test.persistdb.dir}"/>
+ <sysproperty key="log4j.configuration" value="log4j.xml"/>
+ <sysproperty key="jboss.esb.invm.scope.default" value="NONE"/>
+ </junit>
+ </target>
+
+ <target name="-esb.services.internal.integration.test.junit.external" if="esb.qa.external">
+ <junit printsummary="yes" haltonerror="${org.jboss.esb.build.haltonerror}" haltonfailure="${org.jboss.esb.build.haltonfailure}" showoutput="no" fork="true">
+ <formatter type="plain" usefile="false"/>
+ <formatter type="xml"/>
+ <batchtest todir="${org.jboss.esb.tests.report.dir}">
+ <fileset dir="${org.jboss.esb.module.tests.src.dir}">
+ <include name="**/**IntegrationTest.java"/>
+ <include name="**/**UnitTest.java"/>
+ <include name="**/**FuncTest.java"/>
+ </fileset>
+ </batchtest>
+ <classpath refid="org.jboss.esb.external.tests.classpath" />
+ <!--
+ Setting the endored lib to lib/ext/endorsed
+ This was needed for Java6 as it distributes it's one version of saaj
+ -->
+ <sysproperty key="java.endorsed.dirs" value="${endorsed}"/>
+
+ <sysproperty key="org.jboss.esb.test.ftp.hostname" value="${org.jboss.esb.test.ftp.hostname}"/>
+ <sysproperty key="org.jboss.esb.test.ftp.user" value="${org.jboss.esb.test.ftp.user}"/>
+ <sysproperty key="org.jboss.esb.test.ftp.pwd" value="${org.jboss.esb.test.ftp.pwd}"/>
+ <sysproperty key="org.jboss.esb.test.ftp.dir" value="${org.jboss.esb.test.ftp.dir}"/>
+ <sysproperty key="org.jboss.esb.test.persistdb.dir" value="${org.jboss.esb.test.persistdb.dir}"/>
+ <sysproperty key="log4j.configuration" value="log4j.xml"/>
+ <sysproperty key="jboss.esb.invm.scope.default" value="NONE"/>
+ </junit>
+ </target>
+
</project>
Modified: labs/jbossesb/branches/JBESB_4_10_CP/qa/test.properties
===================================================================
--- labs/jbossesb/branches/JBESB_4_10_CP/qa/test.properties 2011-08-12 14:09:09 UTC (rev 37401)
+++ labs/jbossesb/branches/JBESB_4_10_CP/qa/test.properties 2011-08-12 14:48:25 UTC (rev 37402)
@@ -11,7 +11,7 @@
# Set these options to run the tests against a SOA/JBoss AS container
####
#soa.test.no-prepare=true
-#org.jboss.esb.server.home=
-#org.jboss.esb.test.server.config=all
-#org.jboss.esb.server.config=all
+org.jboss.esb.server.home=/home/tcunning/jboss-5.1.0.GA
+org.jboss.esb.test.server.config=qatest
+org.jboss.esb.server.config=default
More information about the jboss-svn-commits
mailing list