<!DOCTYPE html>
<!--
 | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 11 Jan 2020 
 | Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta name="Date-Revision-yyyymmdd" content="20200111" />
    <meta http-equiv="Content-Language" content="en" />
    <title>jUDDI Distribution Assembly &#x2013; CI Management</title>
    <link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
    <link rel="stylesheet" href="./css/site.css" />
    <link rel="stylesheet" href="./css/print.css" media="print" />
      <script type="text/javascript" src="./js/apache-maven-fluido-1.6.min.js"></script>
      </head>
    <body class="topBarEnabled">
                      <a href="https://github.com/apache/juddi">
      <img style="position: absolute; top: 0; right: 0; border: 0; z-index: 10000;"
        src="https://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png"
        alt="Fork me on GitHub">
    </a>
      <div id="topbar" class="navbar navbar-fixed-top ">
      <div class="navbar-inner">
        <div class="container-fluid">
        <a data-target=".nav-collapse" data-toggle="collapse" class="btn btn-navbar">
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
        </a>
            <ul class="nav">
        <li class="dropdown">
        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Parent Project <b class="caret"></b></a>
        <ul class="dropdown-menu">
            <li><a href="../index.html" title="jUDDI_v3 Parent">jUDDI_v3 Parent</a></li>
        </ul>
      </li>
        <li class="dropdown">
        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Project Documentation <b class="caret"></b></a>
        <ul class="dropdown-menu">
            <li class="dropdown-submenu">
<a href="project-info.html" title="Project Information">Project Information</a>
              <ul class="dropdown-menu">
                  <li><a href="integration.html" title="CI Management">CI Management</a></li>
                  <li><a href="dependencies.html" title="Dependencies">Dependencies</a></li>
                  <li><a href="dependency-info.html" title="Dependency Information">Dependency Information</a></li>
                  <li><a href="dependency-management.html" title="Dependency Management">Dependency Management</a></li>
                  <li><a href="distribution-management.html" title="Distribution Management">Distribution Management</a></li>
                  <li><a href="index.html" title="About">About</a></li>
                  <li><a href="issue-tracking.html" title="Issue Management">Issue Management</a></li>
                  <li><a href="license.html" title="Licenses">Licenses</a></li>
                  <li><a href="mail-lists.html" title="Mailing Lists">Mailing Lists</a></li>
                  <li><a href="plugin-management.html" title="Plugin Management">Plugin Management</a></li>
                  <li><a href="plugins.html" title="Plugins">Plugins</a></li>
                  <li><a href="team-list.html" title="Team">Team</a></li>
                  <li><a href="source-repository.html" title="Source Code Management">Source Code Management</a></li>
                  <li><a href="project-summary.html" title="Summary">Summary</a></li>
              </ul>
            </li>
            <li class="dropdown-submenu">
<a href="project-reports.html" title="Project Reports">Project Reports</a>
              <ul class="dropdown-menu">
                  <li><a href="jira-report.html" title="JIRA Report">JIRA Report</a></li>
              </ul>
            </li>
        </ul>
      </li>
              </ul>
            </div>
        </div>
      </div>
    </div>
    <div class="container-fluid">
      <div id="banner">
        <div class="pull-left"><a href=".." id="bannerLeft"><img src="../images/logo.png"  alt="Apache jUDDI"/></a></div>
        <div class="pull-right"><div id="bannerRight"><img src="../images/apache_feather.gif" /></div>
</div>
        <div class="clear"><hr/></div>
      </div>

      <div id="breadcrumbs">
        <ul class="breadcrumb">
        <li class=""><a href="http://www.apache.org/" class="externalLink" title="Apache">Apache</a><span class="divider">/</span></li>
      <li class=""><a href="index.html" title="jUDDI Distribution Assembly">jUDDI Distribution Assembly</a><span class="divider">/</span></li>
    <li class="active ">CI Management</li>
        <li id="publishDate" class="pull-right"><span class="divider">|</span> Last Published: 11 Jan 2020</li>
          <li id="projectVersion" class="pull-right">Version: 3.3.7</li>
        </ul>
      </div>
      <div class="row-fluid">
        <div id="leftColumn" class="span2">
          <div class="well sidebar-nav">
<ul class="nav nav-list">
          <li class="nav-header">Parent Project</li>
    <li><a href="../index.html" title="jUDDI_v3 Parent"><span class="none"></span>jUDDI_v3 Parent</a>  </li>
          <li class="nav-header">Project Documentation</li>
    <li><a href="project-info.html" title="Project Information"><span class="icon-chevron-down"></span>Project Information</a>
      <ul class="nav nav-list">
    <li class="active"><a href="#"><span class="none"></span>CI Management</a>
  </li>
    <li><a href="dependencies.html" title="Dependencies"><span class="none"></span>Dependencies</a>  </li>
    <li><a href="dependency-info.html" title="Dependency Information"><span class="none"></span>Dependency Information</a>  </li>
    <li><a href="dependency-management.html" title="Dependency Management"><span class="none"></span>Dependency Management</a>  </li>
    <li><a href="distribution-management.html" title="Distribution Management"><span class="none"></span>Distribution Management</a>  </li>
    <li><a href="index.html" title="About"><span class="none"></span>About</a>  </li>
    <li><a href="issue-tracking.html" title="Issue Management"><span class="none"></span>Issue Management</a>  </li>
    <li><a href="license.html" title="Licenses"><span class="none"></span>Licenses</a>  </li>
    <li><a href="mail-lists.html" title="Mailing Lists"><span class="none"></span>Mailing Lists</a>  </li>
    <li><a href="plugin-management.html" title="Plugin Management"><span class="none"></span>Plugin Management</a>  </li>
    <li><a href="plugins.html" title="Plugins"><span class="none"></span>Plugins</a>  </li>
    <li><a href="team-list.html" title="Team"><span class="none"></span>Team</a>  </li>
    <li><a href="source-repository.html" title="Source Code Management"><span class="none"></span>Source Code Management</a>  </li>
    <li><a href="project-summary.html" title="Summary"><span class="none"></span>Summary</a>  </li>
      </ul>
  </li>
    <li><a href="project-reports.html" title="Project Reports"><span class="icon-chevron-right"></span>Project Reports</a>  </li>
  </ul>
<form id="search-form" action="https://www.google.com/search" method="get" >
      <input value="$sitesearchValue" name="sitesearch" type="hidden"/>
  <input class="search-query" name="q" id="query" type="text" />
</form>
<script type="text/javascript">asyncJs( 'https://cse.google.com/brand?form=search-form' )</script>
          <hr />
          <div id="poweredBy">
              <div class="clear"></div>
              <div class="clear"></div>
              <div class="clear"></div>
              <div class="clear"></div>
  <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
              </div>
          </div>
        </div>
        <div id="bodyColumn"  class="span10" >
<div class="section">
<h2><a name="Overview"></a>Overview</h2><a name="Overview"></a>
<p>This project uses Continuous Integration System.</p></div>
<div class="section">
<h2><a name="Access"></a>Access</h2><a name="Access"></a>
<p>The following is a link to the continuous integration system used by the project:</p>
<div class="source"><pre class="prettyprint linenums"><a class="externalLink" href="http://ci.apache.org/buildbot.html">http://ci.apache.org/buildbot.html</a></pre></div></div>
<div class="section">
<h2><a name="Notifiers"></a>Notifiers</h2><a name="Notifiers"></a>
<p>Configuration for notifying developers/users when a build is unsuccessful, including user information and notification mode.</p>
<table border="0" class="table table-striped">
<tr class="a">
<th>Type</th>
<th>Address</th>
<th>Configuration</th></tr>
<tr class="b">
<td>mail</td>
<td>-</td>
<td>address=dev@juddi.apache.org</td></tr></table></div>
        </div>
      </div>
    </div>
    <hr/>
    <footer>
      <div class="container-fluid">
        <div class="row-fluid">
            <p>Copyright &copy;2004&#x2013;2020
<a href="https://www.apache.org/">The Apache Software Foundation</a>.
All rights reserved.</p>
        </div>
        </div>
    </footer>
    </body>
</html>
