Skip to content

Commit 34adc57

Browse files
authored
feat(kiali): workloads details page overview tab (#1198)
* Add details components * Update detalis * Update to Material UI components * Workloads description * Update Overview * Istio Config List * Update icons * Remove tabs * Update missing label * Update regex * dev * lint * lint * Sonar * sonar * sonar * Update Istioconfig * sonar * fix istio config and styles, add istio config to fixtures * Remove links to Istio Objects for now * Update links * sonar * Remove link for config * sonar * Added breadcrumb * fix after rebase * link * lint * sonnar * fix breadcrumb * Update prop * Breadcrumbs view in dev
1 parent 2b266bc commit 34adc57

File tree

85 files changed

+8570
-77
lines changed

Some content is hidden

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

85 files changed

+8570
-77
lines changed

plugins/kiali/dev/__fixtures__/index.ts

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,46 +16,76 @@ import status from './general/status.json';
1616
import bookinfoHealthApp from './namespaces/bookinfo/health/app.json';
1717
import bookinfoHealthService from './namespaces/bookinfo/health/service.json';
1818
import bookinfoHealthWorkload from './namespaces/bookinfo/health/workload.json';
19+
import bookinfoIstioConfig from './namespaces/bookinfo/istio_config.json';
1920
import bookInfoMetrics from './namespaces/bookinfo/metrics';
2021
/* bookinfo */
2122
import bookinfoTls from './namespaces/bookinfo/tls.json';
2223
/** Workloads **/
2324
import bookinfoWorkloads from './namespaces/bookinfo/workloads.json';
25+
import detailsWorkload from './namespaces/bookinfo/workloads/details_v1.json';
26+
import kialitrafficWorkload from './namespaces/bookinfo/workloads/kiali_traffic_generator.json';
27+
import productpagev1Workload from './namespaces/bookinfo/workloads/productpage_v1.json';
28+
import ratingsv1Workload from './namespaces/bookinfo/workloads/ratings_v1.json';
29+
import reviewsv1Workload from './namespaces/bookinfo/workloads/reviews_v1.json';
30+
import reviewsv2Workload from './namespaces/bookinfo/workloads/reviews_v2.json';
31+
import reviewsv3Workload from './namespaces/bookinfo/workloads/reviews_v3.json';
2432
/** health **/
2533
import istioSystemHealthApp from './namespaces/istio-system/health/app.json';
2634
import istioSystemHealthService from './namespaces/istio-system/health/service.json';
2735
import istioSystemHealthWorkload from './namespaces/istio-system/health/workload.json';
36+
import istioSystemIstioConfig from './namespaces/istio-system/istio_config.json';
2837
import istioSystemMetrics from './namespaces/istio-system/metrics';
2938
/* istio-system */
3039
import istioSystemTls from './namespaces/istio-system/tls.json';
3140
import istioSystemWorkloads from './namespaces/istio-system/workloads.json';
41+
import grafanaWorkload from './namespaces/istio-system/workloads/grafana.json';
42+
import istioegressgatewayWorkload from './namespaces/istio-system/workloads/istio_egressgateway.json';
43+
import istioingressgatewayWorkload from './namespaces/istio-system/workloads/istio_ingressgateway.json';
44+
import istiodWorkload from './namespaces/istio-system/workloads/istiod.json';
45+
import jaegerWorkload from './namespaces/istio-system/workloads/jaeger.json';
46+
import kialiWorkload from './namespaces/istio-system/workloads/kiali.json';
47+
import prometheusWorkload from './namespaces/istio-system/workloads/prometheus.json';
3248
/** health **/
3349

3450
import travelAgencyHealthApp from './namespaces/travel-agency/health/app.json';
3551
import travelAgencyHealthService from './namespaces/travel-agency/health/service.json';
3652
import travelAgencyHealthWorkload from './namespaces/travel-agency/health/workload.json';
53+
import travelAgencyIstioConfig from './namespaces/travel-agency/istio_config.json';
3754
import travelAgencyMetrics from './namespaces/travel-agency/metrics';
3855
/* Travel agency */
3956
import travelAgencyTls from './namespaces/travel-agency/tls.json';
4057
import travelAgencyWorkloads from './namespaces/travel-agency/workloads.json';
58+
import carsv1Workload from './namespaces/travel-agency/workloads/cars_v1.json';
59+
import discountsv1Workload from './namespaces/travel-agency/workloads/discounts_v1.json';
60+
import flightsv1Workload from './namespaces/travel-agency/workloads/flights_v1.json';
61+
import hotelsv1Workload from './namespaces/travel-agency/workloads/hotels_v1.json';
62+
import insurancesv1Workload from './namespaces/travel-agency/workloads/insurances_v1.json';
63+
import mysqldbv1Workload from './namespaces/travel-agency/workloads/mysqldb_v1.json';
64+
import travelsv1Workload from './namespaces/travel-agency/workloads/travels_v1.json';
4165
/** health **/
4266

4367
import travelControlHealthApp from './namespaces/travel-control/health/app.json';
4468
import travelControlHealthService from './namespaces/travel-control/health/service.json';
4569
import travelControlHealthWorkload from './namespaces/travel-control/health/workload.json';
70+
import travelControlIstioConfig from './namespaces/travel-control/istio_config.json';
4671
import travelControlMetrics from './namespaces/travel-control/metrics';
4772
/* Travel control */
4873
import travelControlTls from './namespaces/travel-control/tls.json';
4974
import travelControlWorkloads from './namespaces/travel-control/workloads.json';
75+
import travelControlWorkload from './namespaces/travel-control/workloads/control.json';
5076
/** health **/
5177

5278
import travelPortalHealthApp from './namespaces/travel-portal/health/app.json';
5379
import travelPortalHealthService from './namespaces/travel-portal/health/service.json';
5480
import travelPortalHealthWorkload from './namespaces/travel-portal/health/workload.json';
81+
import travelPortalIstioConfig from './namespaces/travel-portal/istio_config.json';
5582
import travelPortalMetrics from './namespaces/travel-portal/metrics';
5683
/* Travel portal */
5784
import travelPortalTls from './namespaces/travel-portal/tls.json';
5885
import travelPortalWorkloads from './namespaces/travel-portal/workloads.json';
86+
import travelPortalTravels from './namespaces/travel-portal/workloads/travels.json';
87+
import travelPortalViaggi from './namespaces/travel-portal/workloads/viaggi.json';
88+
import travelPortalVoyages from './namespaces/travel-portal/workloads/voyages.json';
5989

6090
export const kialiData: { [index: string]: any } = {
6191
auth: anonymousAuth,
@@ -78,6 +108,16 @@ export const kialiData: { [index: string]: any } = {
78108
service: istioSystemHealthService,
79109
workload: istioSystemHealthWorkload,
80110
},
111+
workloads: {
112+
grafana: grafanaWorkload,
113+
istioegressgateway: istioegressgatewayWorkload,
114+
istioingressgateway: istioingressgatewayWorkload,
115+
istiod: istiodWorkload,
116+
jaeger: jaegerWorkload,
117+
kiali: kialiWorkload,
118+
prometheus: prometheusWorkload,
119+
},
120+
istioConfigList: istioSystemIstioConfig,
81121
},
82122
bookinfo: {
83123
tls: bookinfoTls,
@@ -87,6 +127,16 @@ export const kialiData: { [index: string]: any } = {
87127
service: bookinfoHealthService,
88128
workload: bookinfoHealthWorkload,
89129
},
130+
workloads: {
131+
detailsv1: detailsWorkload,
132+
kialitrafficgenerator: kialitrafficWorkload,
133+
productpagev1: productpagev1Workload,
134+
ratingsv1: ratingsv1Workload,
135+
reviewsv1: reviewsv1Workload,
136+
reviewsv2: reviewsv2Workload,
137+
reviewsv3: reviewsv3Workload,
138+
},
139+
istioConfigList: bookinfoIstioConfig,
90140
},
91141
'travel-control': {
92142
tls: travelControlTls,
@@ -96,6 +146,10 @@ export const kialiData: { [index: string]: any } = {
96146
service: travelControlHealthService,
97147
workload: travelControlHealthWorkload,
98148
},
149+
workloads: {
150+
control: travelControlWorkload,
151+
},
152+
istioConfigList: travelControlIstioConfig,
99153
},
100154
'travel-portal': {
101155
tls: travelPortalTls,
@@ -105,6 +159,12 @@ export const kialiData: { [index: string]: any } = {
105159
service: travelPortalHealthService,
106160
workload: travelPortalHealthWorkload,
107161
},
162+
workloads: {
163+
travels: travelPortalTravels,
164+
viaggi: travelPortalViaggi,
165+
voyages: travelPortalVoyages,
166+
},
167+
istioConfigList: travelPortalIstioConfig,
108168
},
109169
'travel-agency': {
110170
tls: travelAgencyTls,
@@ -114,6 +174,16 @@ export const kialiData: { [index: string]: any } = {
114174
service: travelAgencyHealthService,
115175
workload: travelAgencyHealthWorkload,
116176
},
177+
workloads: {
178+
carsv1: carsv1Workload,
179+
discountsv1: discountsv1Workload,
180+
flightsv1: flightsv1Workload,
181+
hotelsv1: hotelsv1Workload,
182+
insurancesv1: insurancesv1Workload,
183+
mysqldbv1: mysqldbv1Workload,
184+
travels: travelsv1Workload,
185+
},
186+
istioConfigList: travelAgencyIstioConfig,
117187
},
118188
},
119189
workloads: {
Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
{
2+
"namespace": {
3+
"name": "bookinfo",
4+
"cluster": "",
5+
"isAmbient": false,
6+
"labels": null,
7+
"annotations": null
8+
},
9+
"destinationRules": [],
10+
"envoyFilters": [
11+
{
12+
"kind": "EnvoyFilter",
13+
"apiVersion": "networking.istio.io/v1alpha3",
14+
"metadata": {
15+
"name": "reviews-lua",
16+
"namespace": "bookinfo",
17+
"uid": "6188f1b2-d252-441b-912f-abd011ff8556",
18+
"resourceVersion": "90356",
19+
"generation": 1,
20+
"creationTimestamp": "2024-02-19T09:39:06Z",
21+
"annotations": {
22+
"kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"networking.istio.io/v1alpha3\",\"kind\":\"EnvoyFilter\",\"metadata\":{\"annotations\":{},\"name\":\"reviews-lua\",\"namespace\":\"bookinfo\"},\"spec\":{\"workloadSelector\":{\"labels\":{\"app\":\"reviews\"}}}}\n"
23+
},
24+
"managedFields": [
25+
{
26+
"manager": "kubectl-client-side-apply",
27+
"operation": "Update",
28+
"apiVersion": "networking.istio.io/v1alpha3",
29+
"time": "2024-02-19T09:39:06Z",
30+
"fieldsType": "FieldsV1",
31+
"fieldsV1": {
32+
"f:metadata": {
33+
"f:annotations": {
34+
".": {},
35+
"f:kubectl.kubernetes.io/last-applied-configuration": {}
36+
}
37+
},
38+
"f:spec": {
39+
".": {},
40+
"f:workloadSelector": {
41+
".": {},
42+
"f:labels": {
43+
".": {},
44+
"f:app": {}
45+
}
46+
}
47+
}
48+
}
49+
}
50+
]
51+
},
52+
"spec": {
53+
"workloadSelector": {
54+
"labels": {
55+
"app": "reviews"
56+
}
57+
}
58+
},
59+
"status": {}
60+
}
61+
],
62+
"gateways": [],
63+
"serviceEntries": [],
64+
"sidecars": [],
65+
"virtualServices": [],
66+
"workloadEntries": [],
67+
"workloadGroups": [],
68+
"wasmPlugins": [],
69+
"telemetries": [],
70+
"k8sGateways": [],
71+
"k8sHTTPRoutes": [],
72+
"authorizationPolicies": [],
73+
"peerAuthentications": [],
74+
"requestAuthentications": [],
75+
"validations": {
76+
"gateway": {
77+
"bookinfo-gateway.bookinfo": {
78+
"name": "bookinfo-gateway",
79+
"objectType": "gateway",
80+
"valid": true,
81+
"checks": [],
82+
"references": null
83+
}
84+
}
85+
}
86+
}

0 commit comments

Comments
 (0)