Skip to content

Commit 06a1249

Browse files
committed
control api + swagger ui for http api
1 parent 2871da1 commit 06a1249

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+3196
-588
lines changed
+382
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,382 @@
1+
{
2+
"swagger": "2.0",
3+
"info": {
4+
"title": "skaffold.proto",
5+
"version": "version not set"
6+
},
7+
"schemes": [
8+
"http",
9+
"https"
10+
],
11+
"consumes": [
12+
"application/json"
13+
],
14+
"produces": [
15+
"application/json"
16+
],
17+
"paths": {
18+
"/v1/event_log": {
19+
"get": {
20+
"summary": "EventLog returns all the events of the current Skaffold execution from the start",
21+
"operationId": "EventLog",
22+
"responses": {
23+
"200": {
24+
"description": "A successful response.(streaming responses)",
25+
"schema": {
26+
"$ref": "#/x-stream-definitions/protoLogEntry"
27+
}
28+
}
29+
},
30+
"tags": [
31+
"SkaffoldService"
32+
]
33+
}
34+
},
35+
"/v1/execute": {
36+
"post": {
37+
"summary": "Execute allows for a single execution of some or all of the phases (build, sync, deploy) in case autoBuild, autoDeploy or autoSync are disabled.",
38+
"operationId": "Execute",
39+
"responses": {
40+
"200": {
41+
"description": "A successful response.",
42+
"schema": {
43+
"properties": {}
44+
}
45+
}
46+
},
47+
"parameters": [
48+
{
49+
"name": "body",
50+
"in": "body",
51+
"required": true,
52+
"schema": {
53+
"$ref": "#/definitions/protoIntent"
54+
}
55+
}
56+
],
57+
"tags": [
58+
"SkaffoldService"
59+
]
60+
}
61+
},
62+
"/v1/state": {
63+
"get": {
64+
"summary": "GetState returns the state of the current Skaffold execution",
65+
"operationId": "GetState",
66+
"responses": {
67+
"200": {
68+
"description": "A successful response.",
69+
"schema": {
70+
"$ref": "#/definitions/protoState"
71+
}
72+
}
73+
},
74+
"tags": [
75+
"SkaffoldService"
76+
]
77+
}
78+
}
79+
},
80+
"definitions": {
81+
"protoBuildEvent": {
82+
"type": "object",
83+
"properties": {
84+
"artifact": {
85+
"type": "string"
86+
},
87+
"status": {
88+
"type": "string"
89+
},
90+
"err": {
91+
"type": "string"
92+
}
93+
},
94+
"description": "BuildEvent describes the build status per artifact, and will be emitted by Skaffold anytime a build starts or finishes, successfully or not.\nIf the build fails, an error will be attached to the event."
95+
},
96+
"protoBuildState": {
97+
"type": "object",
98+
"properties": {
99+
"artifacts": {
100+
"type": "object",
101+
"additionalProperties": {
102+
"type": "string"
103+
}
104+
}
105+
},
106+
"title": "BuildState contains a map of all skaffold artifacts to their current build\nstates"
107+
},
108+
"protoDeployEvent": {
109+
"type": "object",
110+
"properties": {
111+
"status": {
112+
"type": "string"
113+
},
114+
"err": {
115+
"type": "string"
116+
}
117+
},
118+
"description": "DeployEvent gives the status of a deployment, and will be emitted by Skaffold\nanytime a deployment starts or completes, successfully or not."
119+
},
120+
"protoDeployState": {
121+
"type": "object",
122+
"properties": {
123+
"status": {
124+
"type": "string"
125+
}
126+
},
127+
"title": "DeployState contains the status of the current deploy"
128+
},
129+
"protoEvent": {
130+
"type": "object",
131+
"properties": {
132+
"metaEvent": {
133+
"$ref": "#/definitions/protoMetaEvent"
134+
},
135+
"buildEvent": {
136+
"$ref": "#/definitions/protoBuildEvent"
137+
},
138+
"deployEvent": {
139+
"$ref": "#/definitions/protoDeployEvent"
140+
},
141+
"portEvent": {
142+
"$ref": "#/definitions/protoPortEvent"
143+
},
144+
"statusCheckEvent": {
145+
"$ref": "#/definitions/protoStatusCheckEvent"
146+
},
147+
"resourceStatusCheckEvent": {
148+
"$ref": "#/definitions/protoResourceStatusCheckEvent"
149+
},
150+
"fileSyncEvent": {
151+
"$ref": "#/definitions/protoFileSyncEvent"
152+
}
153+
},
154+
"description": "Event is one of the following events."
155+
},
156+
"protoFileSyncEvent": {
157+
"type": "object",
158+
"properties": {
159+
"fileCount": {
160+
"type": "integer",
161+
"format": "int32"
162+
},
163+
"image": {
164+
"type": "string"
165+
},
166+
"status": {
167+
"type": "string"
168+
},
169+
"err": {
170+
"type": "string"
171+
}
172+
},
173+
"description": "FileSyncEvent describes the sync status."
174+
},
175+
"protoFileSyncState": {
176+
"type": "object",
177+
"properties": {
178+
"status": {
179+
"type": "string"
180+
}
181+
},
182+
"title": "FileSyncState contains the status of the current file sync"
183+
},
184+
"protoIntent": {
185+
"type": "object",
186+
"properties": {
187+
"build": {
188+
"type": "boolean",
189+
"format": "boolean"
190+
},
191+
"sync": {
192+
"type": "boolean",
193+
"format": "boolean"
194+
},
195+
"deploy": {
196+
"type": "boolean",
197+
"format": "boolean"
198+
}
199+
},
200+
"description": "Intent represents user intents for a given phase to be unblocked, once."
201+
},
202+
"protoLogEntry": {
203+
"type": "object",
204+
"properties": {
205+
"timestamp": {
206+
"type": "string",
207+
"format": "date-time"
208+
},
209+
"event": {
210+
"$ref": "#/definitions/protoEvent"
211+
},
212+
"entry": {
213+
"type": "string"
214+
}
215+
},
216+
"description": "LogEntry describes an event and a string description of the event."
217+
},
218+
"protoMetaEvent": {
219+
"type": "object",
220+
"properties": {
221+
"entry": {
222+
"type": "string"
223+
}
224+
},
225+
"title": "MetaEvent gives general information regarding Skaffold like version info"
226+
},
227+
"protoPortEvent": {
228+
"type": "object",
229+
"properties": {
230+
"localPort": {
231+
"type": "integer",
232+
"format": "int32"
233+
},
234+
"remotePort": {
235+
"type": "integer",
236+
"format": "int32"
237+
},
238+
"podName": {
239+
"type": "string"
240+
},
241+
"containerName": {
242+
"type": "string"
243+
},
244+
"namespace": {
245+
"type": "string"
246+
},
247+
"portName": {
248+
"type": "string"
249+
},
250+
"resourceType": {
251+
"type": "string"
252+
},
253+
"resourceName": {
254+
"type": "string"
255+
}
256+
},
257+
"description": "PortEvent Event describes each port forwarding event."
258+
},
259+
"protoResourceStatusCheckEvent": {
260+
"type": "object",
261+
"properties": {
262+
"resource": {
263+
"type": "string"
264+
},
265+
"status": {
266+
"type": "string"
267+
},
268+
"message": {
269+
"type": "string"
270+
},
271+
"err": {
272+
"type": "string"
273+
}
274+
}
275+
},
276+
"protoState": {
277+
"type": "object",
278+
"properties": {
279+
"buildState": {
280+
"$ref": "#/definitions/protoBuildState"
281+
},
282+
"deployState": {
283+
"$ref": "#/definitions/protoDeployState"
284+
},
285+
"forwardedPorts": {
286+
"type": "object",
287+
"additionalProperties": {
288+
"$ref": "#/definitions/protoPortEvent"
289+
}
290+
},
291+
"statusCheckState": {
292+
"$ref": "#/definitions/protoStatusCheckState"
293+
},
294+
"fileSyncState": {
295+
"$ref": "#/definitions/protoFileSyncState"
296+
}
297+
},
298+
"title": "State represents the current state of the Skaffold components"
299+
},
300+
"protoStatusCheckEvent": {
301+
"type": "object",
302+
"properties": {
303+
"status": {
304+
"type": "string"
305+
},
306+
"message": {
307+
"type": "string"
308+
},
309+
"err": {
310+
"type": "string"
311+
}
312+
},
313+
"description": "StatusCheck Event describes if the Status check has started, is in progress, has succeeded or failed."
314+
},
315+
"protoStatusCheckState": {
316+
"type": "object",
317+
"properties": {
318+
"status": {
319+
"type": "string"
320+
},
321+
"resources": {
322+
"type": "object",
323+
"additionalProperties": {
324+
"type": "string"
325+
}
326+
}
327+
},
328+
"description": "StatusCheckState contains the state of status check of current deployed resources."
329+
},
330+
"protobufAny": {
331+
"type": "object",
332+
"properties": {
333+
"type_url": {
334+
"type": "string"
335+
},
336+
"value": {
337+
"type": "string",
338+
"format": "byte"
339+
}
340+
}
341+
},
342+
"runtimeStreamError": {
343+
"type": "object",
344+
"properties": {
345+
"grpc_code": {
346+
"type": "integer",
347+
"format": "int32"
348+
},
349+
"http_code": {
350+
"type": "integer",
351+
"format": "int32"
352+
},
353+
"message": {
354+
"type": "string"
355+
},
356+
"http_status": {
357+
"type": "string"
358+
},
359+
"details": {
360+
"type": "array",
361+
"items": {
362+
"$ref": "#/definitions/protobufAny"
363+
}
364+
}
365+
}
366+
}
367+
},
368+
"x-stream-definitions": {
369+
"protoLogEntry": {
370+
"type": "object",
371+
"properties": {
372+
"result": {
373+
"$ref": "#/definitions/protoLogEntry"
374+
},
375+
"error": {
376+
"$ref": "#/definitions/runtimeStreamError"
377+
}
378+
},
379+
"title": "Stream result of protoLogEntry"
380+
}
381+
}
382+
}

0 commit comments

Comments
 (0)