29
* Can run as a juju service.
29
* Can run as a Juju service.
30
30
* Needs relationship to Ticket System, PPA Assigner, Branch/Source Builder,
31
31
Image Builder and Test Runner.
32
32
* No public access needed.
110
110
A Lander service handles the workflow by using Jenkins to schedule individual
111
111
tasks. When a request is received to the Lander from the Ticket System, it
112
triggers the master jenkins job with the request parameters. The master job
112
triggers the master Jenkins job with the request parameters. The master job
113
113
then triggers a series of child jobs to execute the workflow.
115
115
The child jobs themselves execute a service handler. The service handler is
116
116
responsible for setting up the progress queue and triggering the service
117
117
via its REST API. As the service handler runs, it outputs the progress updates
118
it receives to the console (to be viewed via jenkins) and pushes the progress
118
it receives to the console (to be viewed via Jenkins) and pushes the progress
119
119
update to the Ticket System.
121
121
When the service completes, the service handler closes with a return code
122
122
matching the status of the service itself. The result data from the service is
123
archived as a jenkins artifact. That data is combined with the existing set of
124
job parameters to be used as input to the next jenkins child job.
123
archived as a Jenkins artifact. That data is combined with the existing set of
124
job parameters to be used as input to the next Jenkins child job.
126
126
Only one master job may execute at a time. If additional build requests are
127
received, they will be queued by jenkins.
127
received, they will be queued by Jenkins.
129
129
The Lander supplies regular notification events to the Ticket System while a
130
130
job is executing. There are no notifications sent when the service is idle.
132
The Lander archives the jenkins console logs and the archived results of each
132
The Lander archives the Jenkins console logs and the archived results of each
133
133
job to the data store.