qpid-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From conflue...@apache.org
Subject [CONF] Apache Qpid > Continuous Integration
Date Fri, 09 Mar 2012 02:06:00 GMT
<html>
<head>
    <base href="https://cwiki.apache.org/confluence">
            <link rel="stylesheet" href="/confluence/s/2042/9/21/_/styles/combined.css?spaceKey=qpid&amp;forWysiwyg=true"
type="text/css">
    </head>
<body style="background: white;" bgcolor="white" class="email-body">
<div id="pageContent">
<div id="notificationFormat">
<div class="wiki-content">
<div class="email">
    <h2><a href="https://cwiki.apache.org/confluence/display/qpid/Continuous+Integration">Continuous
Integration</a></h2>
    <h4>Page <b>edited</b> by             <a href="https://cwiki.apache.org/confluence/display/~k-wall">keith
wall</a>
    </h4>
        <br/>
                         <h4>Changes (3)</h4>
                                 
    
<div id="page-diffs">
                    <table class="diff" cellpadding="0" cellspacing="0">
    
            <tr><td class="diff-snipped" >...<br></td></tr>
            <tr><td class="diff-unchanged" >| [Qpid-Java-Cpp-Test|https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Java-Cpp-Test/]
| check-in | Tests the Java client with the C+\+ Broker. | <br>| [Qpid-Java-Java-Test-IBMJDK1.6|https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Java-Java-Test-IBMJDK1.6/]\\
| every 24h | Tests the Java client with Java broker under IBM JDK 1.6. AMQP 0-10 only. |
<br></td></tr>
            <tr><td class="diff-deleted-lines" style="color:#999;background-color:#fdd;text-decoration:line-through;">|
[Qpid-Java-Java-Test-JDK1.7|https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Java-Java-Test-JDK1.7/]\\
| every 24h | | {color:#333333}Tests the Java client with Java broker under IBM JDK 1.6. AMQP
0-10 only.{color} |\\ | <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;">|
[Qpid-Java-Java-Test-JDK1.7|https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Java-Java-Test-JDK1.7/]\\
| every 24h | Tests the Java client with Java broker under Sun JDK 1.7. AMQP 0-10 only. |
<br></td></tr>
            <tr><td class="diff-unchanged" >| [Qpid-Python-Java-Test|https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Python-Java-Test/]\\
| every 24h | Tests the Python client with the Java Broker. | <br>| [Qpid-Python-Cpp-Test|https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Python-Cpp-Test/]\\
| every 24h | Tests the Python client with the C+\+ Broker. | <br></td></tr>
            <tr><td class="diff-changed-lines" >| <span class="diff-deleted-words"style="color:#999;background-color:#fdd;text-decoration:line-through;">[Qpid-Java-Java-Test-0.14|https://builds.apache.org//view/M-R/view/Qpid/job/Qpid-Java-Java-Test-0.14/]</span>
<span class="diff-added-words"style="background-color: #dfd;">[Qpid-Java-Java-Test-0.16|https://builds.apache.org//view/M-R/view/Qpid/job/Qpid-Java-Java-Test-0.16/]</span>
| every 24h | <span class="diff-changed-words">0.1<span class="diff-deleted-chars"style="color:#999;background-color:#fdd;text-decoration:line-through;">4</span><span
class="diff-added-chars"style="background-color: #dfd;">6</span></span> Release
branch test. Tests the Java client with Java broker. AMQP 0-10 only. | <br></td></tr>
            <tr><td class="diff-unchanged" >| [Qpid-Java-Artefact-Release|https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Java-Artefact-Release/]\\
| every 24h | Generates Maven artefacts for the Java Client/Broker | <br> <br></td></tr>
            <tr><td class="diff-snipped" >...<br></td></tr>
    
            </table>
    </div>                            <h4>Full Content</h4>
                    <div class="notificationGreySide">
        <p>Qpid uses the Apache Infrastructure CI service, which is a <a href="http://jenkins-ci.org/"
class="external-link" rel="nofollow">Jenkins</a> installation. More <a href="http://wiki.apache.org/general/Hudson"
class="external-link" rel="nofollow">details</a> are available from the Apache wiki.
Builds can run on any operating system instance available, or be locked to a particular type.
It may be necessary to restrict some build types to Unix instances only, but using Hudson
will give access to Solaris and Windows Server build environments which will be useful for
interoperability testing. If a build tool such as Maven is used, even tighter integration
with the build process is available, including better test access and the ability to use the
Apache Maven repository for publishing artefacts.</p>

<h2><a name="ContinuousIntegration-Implementation"></a>Implementation</h2>

<p>The implementation of CI for Qpid is being tracked as <a href="https://issues.apache.org/jira/browse/QPID-3149"
class="external-link" rel="nofollow">QPID-3149</a>.</p>

<h2><a name="ContinuousIntegration-Operation"></a>Operation</h2>

<p>All <a href="https://builds.apache.org/hudson/view/M-R/view/Qpid/" class="external-link"
rel="nofollow">builds</a> are prefixed with Q<em>pid&#45;</em> to
allow grouping together, the <em>Qpid</em> view shows all jobs matching this pattern.</p>

<p>The following builds are configured:</p>
<div class='table-wrap'>
<table class='confluenceTable'><tbody>
<tr>
<th class='confluenceTh'> Build </th>
<th class='confluenceTh'> Trigger </th>
<th class='confluenceTh'> Description </th>
</tr>
<tr>
<td class='confluenceTd'> <a href="https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Java-Java-TestMatrix/"
class="external-link" rel="nofollow">Qpid-Java-Java-TestMatrix</a> </td>
<td class='confluenceTd'> check-in </td>
<td class='confluenceTd'> Tests the Java client with Java broker. <br class="atl-forced-newline"
/>
Matrix project permutating AMQP 0-10/0-9-1 protocols and BDB/In-Memory message store implementations
</td>
</tr>
<tr>
<td class='confluenceTd'> <a href="https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Java-Cpp-Test/"
class="external-link" rel="nofollow">Qpid-Java-Cpp-Test</a> </td>
<td class='confluenceTd'> check-in </td>
<td class='confluenceTd'> Tests the Java client with the C+&#43; Broker. </td>
</tr>
<tr>
<td class='confluenceTd'> <a href="https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Java-Java-Test-IBMJDK1.6/"
class="external-link" rel="nofollow">Qpid-Java-Java-Test-IBMJDK1.6</a><br class="atl-forced-newline"
/> </td>
<td class='confluenceTd'> every 24h </td>
<td class='confluenceTd'> Tests the Java client with Java broker under IBM JDK 1.6.
AMQP 0-10 only. </td>
</tr>
<tr>
<td class='confluenceTd'> <a href="https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Java-Java-Test-JDK1.7/"
class="external-link" rel="nofollow">Qpid-Java-Java-Test-JDK1.7</a><br class="atl-forced-newline"
/> </td>
<td class='confluenceTd'> every 24h </td>
<td class='confluenceTd'> Tests the Java client with Java broker under Sun JDK 1.7.
AMQP 0-10 only. </td>
</tr>
<tr>
<td class='confluenceTd'> <a href="https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Python-Java-Test/"
class="external-link" rel="nofollow">Qpid-Python-Java-Test</a><br class="atl-forced-newline"
/> </td>
<td class='confluenceTd'> every 24h </td>
<td class='confluenceTd'> Tests the Python client with the Java Broker. </td>
</tr>
<tr>
<td class='confluenceTd'> <a href="https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Python-Cpp-Test/"
class="external-link" rel="nofollow">Qpid-Python-Cpp-Test</a><br class="atl-forced-newline"
/> </td>
<td class='confluenceTd'> every 24h </td>
<td class='confluenceTd'> Tests the Python client with the C+&#43; Broker. </td>
</tr>
<tr>
<td class='confluenceTd'> <a href="https://builds.apache.org//view/M-R/view/Qpid/job/Qpid-Java-Java-Test-0.16/"
class="external-link" rel="nofollow">Qpid-Java-Java-Test-0.16</a><br class="atl-forced-newline"
/> </td>
<td class='confluenceTd'> every 24h </td>
<td class='confluenceTd'> 0.16 Release branch test. Tests the Java client with Java
broker. AMQP 0-10 only. </td>
</tr>
<tr>
<td class='confluenceTd'> <a href="https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Java-Artefact-Release/"
class="external-link" rel="nofollow">Qpid-Java-Artefact-Release</a><br class="atl-forced-newline"
/> </td>
<td class='confluenceTd'> every 24h </td>
<td class='confluenceTd'> Generates Maven artefacts for the Java Client/Broker </td>
</tr>
</tbody></table>
</div>




<p>A timeout of 60 minutes is set for all jobs.</p>

<h4><a name="ContinuousIntegration-JavaBuildConfiguration"></a>Java Build
Configuration</h4>

<p>The Java builds use the latest 1.6 release of the JDK, and the latest available Ant
version, which are both dependent on the versions available on the Hudson instance running
the job.</p>

<p>Only JUnit test results are reported on currently.</p>

<p>The release job archives the following files:</p>

<ul>
	<li>&#42;<b>/release/</b>.zip</li>
	<li>&#42;<b>/release/</b>.tar.gz</li>
	<li>&#42;<b>/release/maven/</b><b>/</b>.&#42;</li>
</ul>


<h4><a name="ContinuousIntegration-CppBuildConfiguration"></a>Cpp Build
Configuration</h4>

<p>The following commands are used to perform the Cpp build.</p>

<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="code-java">
cd trunk/qpid/cpp
./bootstrap; ./configure CXXFLAGS=<span class="code-quote">"-Wno-unused-result"</span>;make
clean;&amp;nbsp;make -j4
</pre>
</div></div>

<p>(As of November 2011, the Ubuntu packages dependencies were: subversion automake
autoconf libtool ruby sasl2-bin uuid-dev g+&#43; libicu42 libstdc++6-4.4-dev python-dev
python2.6-dev libboost1.40-dev libboost1.40-dev libboost-program-options-dev libboost-filesystem-dev).</p>

<h4><a name="ContinuousIntegration-"></a><font color="#000000"><b>Python
Test Configuration</b></font></h4>

<p>The following commands are used to run the Python tests:</p>

<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="code-java">
cd trunk/qpid/python
ulimit -n 1024 # Workaround QPID-3237 - reduce open filehandles
ant -file qpid-python-test-ant.xml -Dqpid.executable=../java/build/bin/qpid-server -Dpython.test.ignore=-I../java/test-profiles/python_tests/Java010PythonExcludes
<span class="code-quote">"-Dpython.test.modules=-mqpid_tests.broker_0_10 -m qmf.console"</span>
-Dqpid.port=25672 -Dqpid.executable.args=<span class="code-quote">"-p 25672 -m 25000"</span>
test
</pre>
</div></div>


<h3><a name="ContinuousIntegration-Future"></a>Future</h3>

<p>Jenkins can be configured to provide many more features with its built-in plugins.
These include:</p>

<ul>
	<li>FIXME/TODO task reporting</li>
	<li>Javadoc publishing</li>
	<li>Coverage reports</li>
</ul>


<p>The use of these plugins will be investigated once the basic build and test cycle
is satisfactorily configured. Future functionality proposed includes:</p>

<ul>
	<li>Integrate CPP Tests</li>
	<li>Switch CPP Build to use cmake</li>
	<li>Integrate Windows build for Java and CPP Brokers</li>
	<li>Publishing SNAPSHOT versions of Maven artefacts to the Apache repository after
a successful nightly build</li>
</ul>


<h3><a name="ContinuousIntegration-Notifications"></a>Notifications</h3>

<p>All jobs are configured to&nbsp;send email notifications@qpid.apache.org&nbsp;when
a build fails, becomes unstable or returns to stable.</p>

<p>Currently <a href="mailto:grkvlt@apache.org" class="external-link" rel="nofollow">Andrew</a>,
<a href="mailto:rajith@apache.org" class="external-link" rel="nofollow">Rajith</a>,&nbsp;<a
href="mailto:robbie@apache.org" class="external-link" rel="nofollow">Robbie</a>&nbsp;and
<a href="mailto:kwall@apache.org" class="external-link" rel="nofollow">Keith</a>
have access to the build configurations.</p>
    </div>
        <div id="commentsSection" class="wiki-content pageSection">
        <div style="float: right;">
            <a href="https://cwiki.apache.org/confluence/users/viewnotifications.action"
class="grey">Change Notification Preferences</a>
        </div>
        <a href="https://cwiki.apache.org/confluence/display/qpid/Continuous+Integration">View
Online</a>
        |
        <a href="https://cwiki.apache.org/confluence/pages/diffpagesbyversion.action?pageId=25204999&revisedVersion=29&originalVersion=28">View
Changes</a>
                |
        <a href="https://cwiki.apache.org/confluence/display/qpid/Continuous+Integration?showComments=true&amp;showCommentArea=true#addcomment">Add
Comment</a>
            </div>
</div>
</div>
</div>
</div>
</body>
</html>

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org


Mime
View raw message