James E. Blair | eff5a9d | 2017-06-20 00:00:37 -0700 | [diff] [blame] | 1 | :title: Connection Configuration |
| 2 | |
| 3 | .. _connection-config: |
| 4 | |
| 5 | Connection Configuration |
| 6 | ======================== |
| 7 | |
| 8 | Most of Zuul's configuration is contained in the git repositories upon |
| 9 | which Zuul operates, however, some configuration outside of git |
| 10 | repositories is still required to bootstrap the system. This includes |
| 11 | information on connections between Zuul and other systems, as well as |
| 12 | identifying the projects Zuul uses. |
| 13 | |
| 14 | .. _connections: |
| 15 | |
| 16 | Connections |
| 17 | ----------- |
| 18 | |
| 19 | In order to interact with external systems, Zuul must have a |
| 20 | *connection* to that system configured. Zuul includes a number of |
| 21 | drivers, each of which implements the functionality necessary to |
| 22 | connect to a system. Each connection in Zuul is associated with a |
| 23 | driver. |
| 24 | |
| 25 | To configure a connection in Zuul, select a unique name for the |
James E. Blair | 5398ad5 | 2017-08-03 15:55:04 -0700 | [diff] [blame] | 26 | connection and add a section to ``zuul.conf`` with the form |
| 27 | ``[connection NAME]``. For example, a connection to a gerrit server |
| 28 | may appear as: |
| 29 | |
| 30 | .. code-block:: ini |
James E. Blair | eff5a9d | 2017-06-20 00:00:37 -0700 | [diff] [blame] | 31 | |
| 32 | [connection mygerritserver] |
| 33 | driver=gerrit |
| 34 | server=review.example.com |
| 35 | |
James E. Blair | c84736e | 2018-01-16 09:34:09 -0800 | [diff] [blame] | 36 | Zuul needs to use a single connection to look up information about |
| 37 | changes hosted by a given system. When it looks up changes, it will |
| 38 | do so using the first connection it finds that matches the server name |
| 39 | it's looking for. It's generally best to use only a single connection |
| 40 | for a given server, however, if you need more than one (for example, |
| 41 | to satisfy unique reporting requirements) be sure to list the primary |
| 42 | connection first as that is what Zuul will use to look up all changes |
| 43 | for that server. |
| 44 | |
James E. Blair | eff5a9d | 2017-06-20 00:00:37 -0700 | [diff] [blame] | 45 | .. _drivers: |
| 46 | |
| 47 | Drivers |
| 48 | ------- |
| 49 | |
| 50 | Drivers may support any of the following functions: |
| 51 | |
| 52 | * Sources -- hosts git repositories for projects. Zuul can clone git |
| 53 | repos for projects and fetch refs. |
| 54 | * Triggers -- emits events to which Zuul may respond. Triggers are |
| 55 | configured in pipelines to cause changes or other refs to be |
| 56 | enqueued. |
| 57 | * Reporters -- outputs information when a pipeline is finished |
| 58 | processing an item. |
| 59 | |
| 60 | Zuul includes the following drivers: |
| 61 | |
| 62 | .. toctree:: |
| 63 | :maxdepth: 2 |
| 64 | |
| 65 | drivers/gerrit |
| 66 | drivers/github |
Fabien Boucher | 194a2bf | 2017-12-02 18:17:58 +0100 | [diff] [blame] | 67 | drivers/git |
James E. Blair | eff5a9d | 2017-06-20 00:00:37 -0700 | [diff] [blame] | 68 | drivers/smtp |
| 69 | drivers/sql |
| 70 | drivers/timer |
| 71 | drivers/zuul |