| :title: Connection Configuration |
| |
| .. _connection-config: |
| |
| Connection Configuration |
| ======================== |
| |
| Most of Zuul's configuration is contained in the git repositories upon |
| which Zuul operates, however, some configuration outside of git |
| repositories is still required to bootstrap the system. This includes |
| information on connections between Zuul and other systems, as well as |
| identifying the projects Zuul uses. |
| |
| .. _connections: |
| |
| Connections |
| ----------- |
| |
| In order to interact with external systems, Zuul must have a |
| *connection* to that system configured. Zuul includes a number of |
| drivers, each of which implements the functionality necessary to |
| connect to a system. Each connection in Zuul is associated with a |
| driver. |
| |
| To configure a connection in Zuul, select a unique name for the |
| connection and add a section to ``zuul.conf`` with the form |
| ``[connection NAME]``. For example, a connection to a gerrit server |
| may appear as: |
| |
| .. code-block:: ini |
| |
| [connection mygerritserver] |
| driver=gerrit |
| server=review.example.com |
| |
| Zuul needs to use a single connection to look up information about |
| changes hosted by a given system. When it looks up changes, it will |
| do so using the first connection it finds that matches the server name |
| it's looking for. It's generally best to use only a single connection |
| for a given server, however, if you need more than one (for example, |
| to satisfy unique reporting requirements) be sure to list the primary |
| connection first as that is what Zuul will use to look up all changes |
| for that server. |
| |
| .. _drivers: |
| |
| Drivers |
| ------- |
| |
| Drivers may support any of the following functions: |
| |
| * Sources -- hosts git repositories for projects. Zuul can clone git |
| repos for projects and fetch refs. |
| * Triggers -- emits events to which Zuul may respond. Triggers are |
| configured in pipelines to cause changes or other refs to be |
| enqueued. |
| * Reporters -- outputs information when a pipeline is finished |
| processing an item. |
| |
| Zuul includes the following drivers: |
| |
| .. toctree:: |
| :maxdepth: 2 |
| |
| drivers/gerrit |
| drivers/github |
| drivers/git |
| drivers/smtp |
| drivers/sql |
| drivers/timer |
| drivers/zuul |