blob: 4338e5a43bc2c838506e058bd55dc81547c87468 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
|
info:
title: Zuul REST API
version: v1
description: Incomplete (work in progress) list of the endpoints.
openapi: 3.0.0
tags:
- name: tenant
paths:
/api/tenant/{tenant}/builds:
get:
operationId: list-builds
parameters:
- description: The tenant name
in: path
name: tenant
required: true
schema:
type: string
- description: A project name
in: query
name: project
schema:
type: string
- description: A pipeline name
in: query
name: pipeline
schema:
type: string
- description: A job name
in: query
name: job_name
schema:
type: string
- description: A branch name
in: query
name: branch
schema:
type: string
- description: A change number
in: query
name: change
schema:
type: string
- description: A patchset number
in: query
name: patchset
schema:
type: string
- description: A ref
in: query
name: ref
schema:
type: string
- description: A new revision hash
in: query
name: newrev
schema:
type: string
- description: A build uuid
in: query
name: uuid
schema:
type: string
- description: A build voting status
in: query
name: voting
schema:
type: string
- description: A build result
in: query
name: result
schema:
type: string
- description: The limit count (default 50)
in: query
name: limit
schema:
type: string
- description: Skip number of results
in: query
name: skip
schema:
type: string
responses:
'200':
content:
application/json:
schema:
description: The list of builds
items:
$ref: '#/components/schemas/build'
type: array
description: Returns the list of builds
'404':
description: Tenant not found
summary: List the executed builds
tags:
- tenant
/api/tenant/{tenant}/buildsets:
get:
operationId: list-buildsets
parameters:
- description: The tenant name
in: path
name: tenant
required: true
schema:
type: string
- description: A project name
in: query
name: project
schema:
type: string
- description: A pipeline name
in: query
name: pipeline
schema:
type: string
- description: A branch name
in: query
name: branch
schema:
type: string
- description: A change number
in: query
name: change
schema:
type: string
- description: A patchset number
in: query
name: patchset
schema:
type: string
- description: A ref
in: query
name: ref
schema:
type: string
- description: A new revision hash
in: query
name: newrev
schema:
type: string
- description: A buildset uuid
in: query
name: uuid
schema:
type: string
- description: A buildset result
in: query
name: result
schema:
type: string
- description: The limit count (default 50)
in: query
name: limit
schema:
type: string
- description: Skip number of results
in: query
name: skip
schema:
type: string
responses:
'200':
content:
application/json:
schema:
description: The list of buildsets
items:
$ref: '#/components/schemas/buildset'
type: array
description: Returns the list of builds
'404':
description: Tenant not found
summary: List the executed builds
tags:
- tenant
/api/tenant/{tenant}/jobs:
get:
operationId: list-jobs
parameters:
- description: The tenant name
in: path
name: tenant
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
description: The list of jobs
items:
description: A job
properties:
description:
description: The job short description
type: string
name:
description: The job name
type: string
type: object
type: array
description: Returns the list of jobs
'404':
description: Tenant not found
summary: List available jobs
tags:
- tenant
/api/tenant/{tenant}/key/{project}.pub:
get:
operationId: get-project-key
parameters:
- description: The tenant name
in: path
name: tenant
required: true
schema:
type: string
- description: The project name
in: path
name: project
required: true
schema:
type: string
responses:
'200':
content:
text/plain:
example: '-----BEGIN PUBLIC KEY-----
MIICI...
-----END PUBLIC KEY-----
'
schema:
description: The project public key
type: string
description: Returns the project public key
'404':
description: Tenant or Project not found
summary: Get a project public key
tags:
- tenant
/api/tenant/{tenant}/status:
get:
operationId: get-status
parameters:
- description: The tenant name
in: path
name: tenant
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
description: The tenant status
properties:
last_reconfigured:
description: The Epoch timestamp of the last reconfiguration
type: integer
pipelines:
description: The list of pipelines
items:
$ref: '#/components/schemas/pipelineStatus'
type: array
result_event_queue:
description: The number of completed events
type: integer
trigger_event_queue:
description: The number of running events
type: integer
zuul_version:
description: The Zuul version
type: string
type: object
description: Returns the list of tenants
'404':
description: Tenant not found
summary: Get tenant status
tags:
- tenant
/api/tenants:
get:
operationId: list-tenants
responses:
'200':
content:
application/json:
schema:
items:
properties:
name:
description: Tenant name
type: string
projects:
description: Tenant project count
type: integer
queue:
description: Active changes count
type: integer
type: object
type: array
description: Returns the list of tenants
summary: List the tenants
tags:
- tenant
components:
schemas:
build:
description: A build
properties:
branch:
description: The build change branch
type: string
change:
description: The build change number
type: integer
duration:
description: The build duration in second
type: integer
end_time:
description: The build end time ISO 8601 format
type: string
job_name:
description: The build job name
type: string
log_url:
description: The build logs url
type: string
newrev:
description: The build newrev
type: string
patchset:
description: The build patchset number
type: integer
pipeline:
description: The build pipeline
type: string
project:
description: The build project name
type: string
ref:
description: The build change reference
type: string
ref_url:
description: The build change reference url
type: string
result:
description: The build result
type: string
start_time:
description: The build start time ISO 8601 format
type: string
uuid:
description: The build uuid
type: string
voting:
description: The build voting status
type: boolean
type: object
buildset:
description: A buildset
properties:
project:
description: The buildset project name
type: string
event_id:
description: The event id that triggered the buildset
type: string
uuid:
description: The buildset uuid
type: string
branch:
description: The buildset change branch
type: string
ref_url:
description: The buildset change reference url
type: string
newrev:
description: The buildset newrev
type: string
result:
description: The buildset result
type: string
change:
description: The buildset change number
type: integer
patchset:
description: The buildset patchset number
type: integer
ref:
description: The buildset change reference
type: string
pipeline:
description: The buildset pipeline
type: string
message:
description: The message that got reported by the buildset
type: object
changeQueue:
description: A change queue
properties:
heads:
description: The list of queue events
items:
items:
$ref: '#/components/schemas/eventQueue'
type: array
type: array
name:
description: The queue name
type: string
window:
description: The queue window
type: integer
type: object
eventQueue:
description: A queue event
properties:
active:
description: Is the event active
type: boolean
enqueue_time:
description: The epoch creation time
type: integer
failing_reasons:
description: The list of failing reasons
items:
type: string
type: array
id:
description: The event id
type: string
item_ahead:
description: The list of events ahead
items:
type: string
type: array
item_behind:
description: The list of events behind
items:
type: string
type: array
jobs:
description: The event list of jobs
items:
$ref: '#/components/schemas/statusJob'
type: array
live:
description: Is the event live
type: boolean
owner:
description: The event owner
type: string
project:
description: The event project
type: string
remaining_time:
description: The estimated remaining time
type: integer
url:
description: The event url
type: string
zuul_ref:
description: The zuul ref
type: string
type: object
pipelineStatus:
description: A pipeline
properties:
change_queues:
description: The pipeline list of change queues
items:
$ref: '#/components/schemas/changeQueue'
type: array
description:
description: The pipeline description
type: string
name:
description: The pipeline name
type: string
type: object
statusJob:
description: A job status
properties:
canceled:
description: Is the job canceled
type: boolean
elapsed_time:
description: The elapsed time
type: integer
launch_time:
description: The epoch launch time
type: integer
name:
description: The job name
type: string
number:
description: The job number
type: integer
pipeline:
description: The job pipeline
type: string
remaining_time:
description: The estimated remaining time
type: integer
result:
description: The job result
type: string
retry:
description: The retry count
type: integer
start_time:
description: The epoch start time
type: integer
url:
description: The job stream url
type: string
uuid:
description: The job uuid
type: string
voting:
description: Is the job voting
type: boolean
worker:
$ref: '#/components/schemas/statusWorker'
type: object
statusWorker:
description: A job worker node
properties:
fqdn:
description: The worker fully qualified domain name
type: string
hostname:
description: The worker hostname
type: string
ips:
description: The list of worker ip addresses
items:
type: string
type: array
name:
description: The worker name
type: string
program:
description: The worker program
type: string
version:
description: The worker version
type: string
type: object
|