Monty Taylor | 82dfd41 | 2016-07-29 12:01:28 -0700 | [diff] [blame] | 1 | Data Model |
James E. Blair | e4de4f4 | 2017-01-19 10:35:24 -0800 | [diff] [blame] | 2 | ========== |
Monty Taylor | 82dfd41 | 2016-07-29 12:01:28 -0700 | [diff] [blame] | 3 | |
| 4 | It all starts with the :py:class:`~zuul.model.Pipeline`. A Pipeline is the |
| 5 | basic organizational structure that everything else hangs off. |
| 6 | |
| 7 | .. autoclass:: zuul.model.Pipeline |
| 8 | |
| 9 | Pipelines have a configured |
Monty Taylor | c75478c | 2016-07-29 12:04:21 -0700 | [diff] [blame] | 10 | :py:class:`~zuul.manager.PipelineManager` which controlls how |
Monty Taylor | 82dfd41 | 2016-07-29 12:01:28 -0700 | [diff] [blame] | 11 | the :py:class:`Change <zuul.model.Changeish>` objects are enqueued and |
| 12 | processed. |
| 13 | |
| 14 | There are currently two, |
| 15 | :py:class:`~zuul.manager.dependent.DependentPipelineManager` and |
| 16 | :py:class:`~zuul.manager.independent.IndependentPipelineManager` |
| 17 | |
Monty Taylor | c75478c | 2016-07-29 12:04:21 -0700 | [diff] [blame] | 18 | .. autoclass:: zuul.manager.PipelineManager |
Monty Taylor | 82dfd41 | 2016-07-29 12:01:28 -0700 | [diff] [blame] | 19 | .. autoclass:: zuul.manager.dependent.DependentPipelineManager |
| 20 | .. autoclass:: zuul.manager.independent.IndependentPipelineManager |
| 21 | |
| 22 | A :py:class:`~zuul.model.Pipeline` has one or more |
| 23 | :py:class:`~zuul.model.ChangeQueue` objects. |
| 24 | |
| 25 | .. autoclass:: zuul.model.ChangeQueue |
| 26 | |
| 27 | A :py:class:`~zuul.model.Job` represents the definition of what to do. A |
| 28 | :py:class:`~zuul.model.Build` represents a single run of a |
| 29 | :py:class:`~zuul.model.Job`. A :py:class:`~zuul.model.JobTree` is used to |
| 30 | encapsulate the dependencies between one or more :py:class:`~zuul.model.Job` |
| 31 | objects. |
| 32 | |
| 33 | .. autoclass:: zuul.model.Job |
| 34 | .. autoclass:: zuul.model.JobTree |
| 35 | .. autoclass:: zuul.model.Build |
| 36 | |
| 37 | The :py:class:`~zuul.manager.base.PipelineManager` enqueues each |
| 38 | :py:class:`Change <zuul.model.Changeish>` into the |
| 39 | :py:class:`~zuul.model.ChangeQueue` in a :py:class:`~zuul.model.QueueItem`. |
| 40 | |
| 41 | .. autoclass:: zuul.model.QueueItem |
| 42 | |
| 43 | As the Changes are processed, each :py:class:`~zuul.model.Build` is put into |
| 44 | a :py:class:`~zuul.model.BuildSet` |
| 45 | |
| 46 | .. autoclass:: zuul.model.BuildSet |
| 47 | |
| 48 | Changes |
| 49 | ~~~~~~~ |
| 50 | |
| 51 | .. autoclass:: zuul.model.Changeish |
| 52 | .. autoclass:: zuul.model.Change |
| 53 | .. autoclass:: zuul.model.Ref |
| 54 | |
| 55 | Filters |
| 56 | ~~~~~~~ |
| 57 | |
| 58 | .. autoclass:: zuul.model.ChangeishFilter |
| 59 | .. autoclass:: zuul.model.EventFilter |
| 60 | |
| 61 | |
| 62 | Tenants |
| 63 | ~~~~~~~ |
| 64 | |
| 65 | An abide is a collection of tenants. |
| 66 | |
James E. Blair | e4de4f4 | 2017-01-19 10:35:24 -0800 | [diff] [blame] | 67 | .. autoclass:: zuul.model.Tenant |
Monty Taylor | 82dfd41 | 2016-07-29 12:01:28 -0700 | [diff] [blame] | 68 | .. autoclass:: zuul.model.UnparsedAbideConfig |
| 69 | .. autoclass:: zuul.model.UnparsedTenantConfig |
| 70 | |
| 71 | Other Global Objects |
| 72 | ~~~~~~~~~~~~~~~~~~~~ |
| 73 | |
| 74 | .. autoclass:: zuul.model.Project |
| 75 | .. autoclass:: zuul.model.Layout |
| 76 | .. autoclass:: zuul.model.RepoFiles |
| 77 | .. autoclass:: zuul.model.Worker |
| 78 | .. autoclass:: zuul.model.TriggerEvent |