Skip to content

Commit b752eb4

Browse files
author
wlanboy
committed
new version
1 parent b20bc2d commit b752eb4

1 file changed

Lines changed: 117 additions & 11 deletions

File tree

openapi.json

Lines changed: 117 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -69,13 +69,71 @@
6969
}
7070
}
7171
},
72+
"/api/k8s/tls": {
73+
"get": {
74+
"tags": [
75+
"Kubernetes Diagnostics"
76+
],
77+
"summary": "TLS-Zertifikat inspizieren",
78+
"description": "Baut eine separate TLS-Verbindung zum Ziel auf und gibt Protokoll, Cipher Suite, Zertifikatskette und SPIFFE/mTLS-Informationen zurück.",
79+
"operationId": "inspectTls",
80+
"parameters": [
81+
{
82+
"name": "url",
83+
"in": "query",
84+
"description": "Ziel-URL (muss https:// sein)",
85+
"required": true,
86+
"schema": {
87+
"type": "string"
88+
},
89+
"example": "https://example.com"
90+
}
91+
],
92+
"responses": {
93+
"200": {
94+
"description": "TLS-Informationen erfolgreich abgerufen",
95+
"content": {
96+
"*/*": {
97+
"schema": {
98+
"type": "object",
99+
"additionalProperties": {}
100+
}
101+
}
102+
}
103+
}
104+
}
105+
}
106+
},
107+
"/api/k8s/status": {
108+
"get": {
109+
"tags": [
110+
"Kubernetes Diagnostics"
111+
],
112+
"summary": "K8s-Client-Status abrufen",
113+
"description": "Zeigt ob der Kubernetes API Client erfolgreich initialisiert wurde, und listet die unterstützten Istio-Ressourcentypen und API-Versionen.",
114+
"operationId": "getK8sStatus",
115+
"responses": {
116+
"200": {
117+
"description": "K8s-Clientstatus",
118+
"content": {
119+
"*/*": {
120+
"schema": {
121+
"type": "object",
122+
"additionalProperties": {}
123+
}
124+
}
125+
}
126+
}
127+
}
128+
}
129+
},
72130
"/api/k8s/istio/{type}": {
73131
"get": {
74132
"tags": [
75133
"Kubernetes Diagnostics"
76134
],
77135
"summary": "Istio-Ressourcen auflisten",
78-
"description": "Listet spezifische Istio-Ressourcen eines Namespaces auf. Unterstützte Typen: `virtualservices`, `destinationrules`.",
136+
"description": "Listet spezifische Istio-Ressourcen eines Namespaces auf. Unterstützte Typen: `virtualservices`, `destinationrules`, `gateways`, `serviceentries`, `sidecars`, `envoyfilters`, `peerauthentications`, `requestauthentications`, `authorizationpolicies`.",
79137
"operationId": "getIstioResources",
80138
"parameters": [
81139
{
@@ -107,7 +165,9 @@
107165
"*/*": {
108166
"schema": {
109167
"type": "array",
110-
"items": {}
168+
"items": {
169+
"type": "object"
170+
}
111171
}
112172
}
113173
}
@@ -141,6 +201,52 @@
141201
}
142202
}
143203
},
204+
"/api/k8s/correlate": {
205+
"get": {
206+
"tags": [
207+
"Kubernetes Diagnostics"
208+
],
209+
"summary": "URL mit VirtualService/DestinationRule korrelieren",
210+
"description": "Prüft ob die angegebene URL durch einen VirtualService abgedeckt ist und welche Routen/DestinationRules zutreffen.",
211+
"operationId": "correlateUrl",
212+
"parameters": [
213+
{
214+
"name": "url",
215+
"in": "query",
216+
"description": "Ziel-URL",
217+
"required": true,
218+
"schema": {
219+
"type": "string"
220+
},
221+
"example": "http://my-service.default.svc.cluster.local/api/v1"
222+
},
223+
{
224+
"name": "namespace",
225+
"in": "query",
226+
"description": "Kubernetes-Namespace",
227+
"required": false,
228+
"schema": {
229+
"type": "string",
230+
"default": "default"
231+
},
232+
"example": "default"
233+
}
234+
],
235+
"responses": {
236+
"200": {
237+
"description": "Korrelationsergebnis erfolgreich abgerufen",
238+
"content": {
239+
"*/*": {
240+
"schema": {
241+
"type": "object",
242+
"additionalProperties": {}
243+
}
244+
}
245+
}
246+
}
247+
}
248+
}
249+
},
144250
"/api/k8s/context": {
145251
"get": {
146252
"tags": [
@@ -342,15 +448,15 @@
342448
"type": "integer",
343449
"format": "int64"
344450
},
451+
"contentDisposition": {
452+
"$ref": "#/components/schemas/ContentDisposition"
453+
},
345454
"acceptCharset": {
346455
"type": "array",
347456
"items": {
348457
"type": "string"
349458
}
350459
},
351-
"contentDisposition": {
352-
"$ref": "#/components/schemas/ContentDisposition"
353-
},
354460
"range": {
355461
"type": "array",
356462
"items": {
@@ -450,16 +556,16 @@
450556
},
451557
"uniqueItems": true
452558
},
559+
"etag": {
560+
"type": "string"
561+
},
453562
"bearerAuth": {
454563
"type": "string",
455564
"writeOnly": true
456565
},
457566
"contentLanguage": {
458567
"type": "string"
459568
},
460-
"etag": {
461-
"type": "string"
462-
},
463569
"expires": {
464570
"type": "integer",
465571
"format": "int64"
@@ -492,12 +598,12 @@
492598
"type": "string"
493599
}
494600
},
601+
"contentType": {
602+
"$ref": "#/components/schemas/MediaType"
603+
},
495604
"ifModifiedSince": {
496605
"type": "integer",
497606
"format": "int64"
498-
},
499-
"contentType": {
500-
"$ref": "#/components/schemas/MediaType"
501607
}
502608
}
503609
},

0 commit comments

Comments
 (0)