@meshery/schemas 1.3.1 → 1.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,7 +4,7 @@
4
4
  */
5
5
 
6
6
  export interface paths {
7
- "/api/performance-profiles": {
7
+ "/api/performance/profiles": {
8
8
  parameters: {
9
9
  query?: never;
10
10
  header?: never;
@@ -28,7 +28,7 @@ export interface paths {
28
28
  patch?: never;
29
29
  trace?: never;
30
30
  };
31
- "/api/performance-profiles/{performanceProfileId}": {
31
+ "/api/performance/profiles/{performanceProfileId}": {
32
32
  parameters: {
33
33
  query?: never;
34
34
  header?: never;
@@ -56,6 +56,66 @@ export interface paths {
56
56
  patch?: never;
57
57
  trace?: never;
58
58
  };
59
+ "/api/performance/profiles/{performanceProfileId}/results": {
60
+ parameters: {
61
+ query?: never;
62
+ header?: never;
63
+ path?: never;
64
+ cookie?: never;
65
+ };
66
+ /**
67
+ * List performance results for a profile
68
+ * @description Returns paginated load-test results associated with the performance profile identified by the path parameter.
69
+ */
70
+ get: operations["getPerformanceProfileResults"];
71
+ put?: never;
72
+ post?: never;
73
+ delete?: never;
74
+ options?: never;
75
+ head?: never;
76
+ patch?: never;
77
+ trace?: never;
78
+ };
79
+ "/api/performance/profiles/{performanceProfileId}/results/{resultId}": {
80
+ parameters: {
81
+ query?: never;
82
+ header?: never;
83
+ path?: never;
84
+ cookie?: never;
85
+ };
86
+ /**
87
+ * Get a performance result for a profile
88
+ * @description Returns one load-test result associated with the performance profile identified by the path parameter.
89
+ */
90
+ get: operations["getPerformanceProfileResult"];
91
+ put?: never;
92
+ post?: never;
93
+ delete?: never;
94
+ options?: never;
95
+ head?: never;
96
+ patch?: never;
97
+ trace?: never;
98
+ };
99
+ "/api/performance/results": {
100
+ parameters: {
101
+ query?: never;
102
+ header?: never;
103
+ path?: never;
104
+ cookie?: never;
105
+ };
106
+ /**
107
+ * List all performance results
108
+ * @description Returns paginated load-test results visible to the authenticated user.
109
+ */
110
+ get: operations["getPerformanceResults"];
111
+ put?: never;
112
+ post?: never;
113
+ delete?: never;
114
+ options?: never;
115
+ head?: never;
116
+ patch?: never;
117
+ trace?: never;
118
+ };
59
119
  }
60
120
  export type webhooks = Record<string, never>;
61
121
  export interface components {
@@ -238,6 +298,194 @@ export interface components {
238
298
  updatedAt: string;
239
299
  }[];
240
300
  };
301
+ /** @description Load-test result captured for a Meshery performance profile. */
302
+ PerformanceResult: {
303
+ /**
304
+ * Format: uuid
305
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
306
+ */
307
+ mesheryId?: string;
308
+ /** @description Human-readable name of the performance result. */
309
+ name?: string;
310
+ /** @description Service mesh under test for this result. */
311
+ mesh?: string;
312
+ /**
313
+ * Format: uuid
314
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
315
+ */
316
+ performanceProfile?: string | null;
317
+ /** @description Provider-assigned test identifier for this result. */
318
+ testId?: string;
319
+ /** @description Raw load-generator output for this performance result. */
320
+ runnerResults?: {
321
+ [key: string]: unknown;
322
+ };
323
+ /** @description Server-side metrics collected for this performance result. */
324
+ serverMetrics?: {
325
+ [key: string]: unknown;
326
+ };
327
+ /** @description Server board configuration associated with this performance result. */
328
+ serverBoardConfig?: {
329
+ [key: string]: unknown;
330
+ };
331
+ /**
332
+ * Format: date-time
333
+ * @description Time when the load test started.
334
+ */
335
+ testStartTime?: string;
336
+ /**
337
+ * Format: uuid
338
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
339
+ */
340
+ userId?: string;
341
+ /**
342
+ * Format: date-time
343
+ * @description Timestamp when the performance result was created.
344
+ */
345
+ createdAt?: string;
346
+ /**
347
+ * Format: date-time
348
+ * @description Timestamp when the performance result was last updated.
349
+ */
350
+ updatedAt?: string;
351
+ };
352
+ /** @description Paginated list of performance results. */
353
+ PerformanceResultPage: {
354
+ /** @description Zero-based page index returned in this response. */
355
+ page: number;
356
+ /** @description Maximum number of items returned on each page. */
357
+ pageSize: number;
358
+ /** @description Total number of performance results across all pages. */
359
+ totalCount: number;
360
+ /** @description Performance results in this page. */
361
+ results: {
362
+ /**
363
+ * Format: uuid
364
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
365
+ */
366
+ mesheryId?: string;
367
+ /** @description Human-readable name of the performance result. */
368
+ name?: string;
369
+ /** @description Service mesh under test for this result. */
370
+ mesh?: string;
371
+ /**
372
+ * Format: uuid
373
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
374
+ */
375
+ performanceProfile?: string | null;
376
+ /** @description Provider-assigned test identifier for this result. */
377
+ testId?: string;
378
+ /** @description Raw load-generator output for this performance result. */
379
+ runnerResults?: {
380
+ [key: string]: unknown;
381
+ };
382
+ /** @description Server-side metrics collected for this performance result. */
383
+ serverMetrics?: {
384
+ [key: string]: unknown;
385
+ };
386
+ /** @description Server board configuration associated with this performance result. */
387
+ serverBoardConfig?: {
388
+ [key: string]: unknown;
389
+ };
390
+ /**
391
+ * Format: date-time
392
+ * @description Time when the load test started.
393
+ */
394
+ testStartTime?: string;
395
+ /**
396
+ * Format: uuid
397
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
398
+ */
399
+ userId?: string;
400
+ /**
401
+ * Format: date-time
402
+ * @description Timestamp when the performance result was created.
403
+ */
404
+ createdAt?: string;
405
+ /**
406
+ * Format: date-time
407
+ * @description Timestamp when the performance result was last updated.
408
+ */
409
+ updatedAt?: string;
410
+ }[];
411
+ };
412
+ /** @description Runtime configuration for a single performance (load) test run. This is the executable test definition that drives load generation, distinct from a saved PerformanceProfile. It is the Meshery-native replacement for the deprecated service-mesh-performance (SMP) PerformanceTestConfig. */
413
+ PerformanceTestConfig: {
414
+ /** @description Version of the performance test configuration format. */
415
+ smpVersion?: string;
416
+ /** @description Opaque identifier assigned to the persisted test configuration. Server-assigned (a UUID string); accepted as a free-form string for backward compatibility with externally authored test files. */
417
+ id?: string;
418
+ /** @description Human-readable name of the performance test. */
419
+ name: string;
420
+ /** @description Arbitrary key/value labels attached to the test configuration. */
421
+ labels?: {
422
+ [key: string]: string;
423
+ };
424
+ /** @description Load-generation clients that issue requests during the test. A single client is typical; multiple clients describe a distributed load test. */
425
+ clients: {
426
+ /** @description Whether the client runs inside the cluster (internal) rather than against an external endpoint. */
427
+ internal?: boolean;
428
+ /** @description Load generator used to drive the test (e.g. "fortio"). Empty defaults to the server's supported generator. */
429
+ loadGenerator?: string;
430
+ /** @description Application protocol exercised by the client (e.g. "http", "tcp", "udp", "grpc"). */
431
+ protocol?: string;
432
+ /** @description Number of concurrent connections the client opens to the endpoint. */
433
+ connections?: number;
434
+ /** @description Target requests-per-second issued by the client. Zero means unthrottled. */
435
+ rps?: number;
436
+ /** @description HTTP request headers sent on each request. */
437
+ headers?: {
438
+ [key: string]: string;
439
+ };
440
+ /** @description HTTP request cookies sent on each request. */
441
+ cookies?: {
442
+ [key: string]: string;
443
+ };
444
+ /** @description Request body sent on each request. */
445
+ body?: string;
446
+ /** @description Content-Type header applied to the request body (e.g. "application/json"). */
447
+ contentType?: string;
448
+ /** @description Target endpoint URLs the client issues requests against. */
449
+ endpointUrls: string[];
450
+ /** @description PEM-encoded SSL certificate presented by the client, when required. */
451
+ sslCertificate?: string;
452
+ /** @description Additional load-generator-specific options passed through to the generator. */
453
+ additionalOptions?: string;
454
+ }[];
455
+ /** @description Length of time the endpoint is held under load, expressed as a Go duration string (e.g. "30s", "5m", "1h"). */
456
+ duration: string;
457
+ };
458
+ /** @description A single load-generation client within a PerformanceTestConfig. It is the Meshery-native replacement for the deprecated service-mesh-performance (SMP) PerformanceTestConfig_Client. */
459
+ PerformanceTestClient: {
460
+ /** @description Whether the client runs inside the cluster (internal) rather than against an external endpoint. */
461
+ internal?: boolean;
462
+ /** @description Load generator used to drive the test (e.g. "fortio"). Empty defaults to the server's supported generator. */
463
+ loadGenerator?: string;
464
+ /** @description Application protocol exercised by the client (e.g. "http", "tcp", "udp", "grpc"). */
465
+ protocol?: string;
466
+ /** @description Number of concurrent connections the client opens to the endpoint. */
467
+ connections?: number;
468
+ /** @description Target requests-per-second issued by the client. Zero means unthrottled. */
469
+ rps?: number;
470
+ /** @description HTTP request headers sent on each request. */
471
+ headers?: {
472
+ [key: string]: string;
473
+ };
474
+ /** @description HTTP request cookies sent on each request. */
475
+ cookies?: {
476
+ [key: string]: string;
477
+ };
478
+ /** @description Request body sent on each request. */
479
+ body?: string;
480
+ /** @description Content-Type header applied to the request body (e.g. "application/json"). */
481
+ contentType?: string;
482
+ /** @description Target endpoint URLs the client issues requests against. */
483
+ endpointUrls: string[];
484
+ /** @description PEM-encoded SSL certificate presented by the client, when required. */
485
+ sslCertificate?: string;
486
+ /** @description Additional load-generator-specific options passed through to the generator. */
487
+ additionalOptions?: string;
488
+ };
241
489
  };
242
490
  responses: {
243
491
  /** @description ok */
@@ -289,6 +537,8 @@ export interface components {
289
537
  parameters: {
290
538
  /** @description Performance profile ID. */
291
539
  performanceProfileId: string;
540
+ /** @description Performance result ID. */
541
+ resultId: string;
292
542
  /** @description Get responses that match search param value */
293
543
  search: string;
294
544
  /** @description Get ordered responses */
@@ -297,6 +547,10 @@ export interface components {
297
547
  page: string;
298
548
  /** @description Get responses by pagesize */
299
549
  pagesize: string;
550
+ /** @description Start date for filtering results by test start time, in YYYY-MM-DD format. */
551
+ from: string;
552
+ /** @description End date for filtering results by test start time, in YYYY-MM-DD format. */
553
+ to: string;
300
554
  };
301
555
  requestBodies: {
302
556
  /** @description Body for creating or updating a performance profile. */
@@ -970,4 +1224,358 @@ export interface operations {
970
1224
  };
971
1225
  };
972
1226
  };
1227
+ getPerformanceProfileResults: {
1228
+ parameters: {
1229
+ query?: {
1230
+ /** @description Get responses by page */
1231
+ page?: string;
1232
+ /** @description Get responses by pagesize */
1233
+ pagesize?: string;
1234
+ /** @description Get responses that match search param value */
1235
+ search?: string;
1236
+ /** @description Get ordered responses */
1237
+ order?: string;
1238
+ };
1239
+ header?: never;
1240
+ path: {
1241
+ /** @description Performance profile ID. */
1242
+ performanceProfileId: string;
1243
+ };
1244
+ cookie?: never;
1245
+ };
1246
+ requestBody?: never;
1247
+ responses: {
1248
+ /** @description Performance results */
1249
+ 200: {
1250
+ headers: {
1251
+ [name: string]: unknown;
1252
+ };
1253
+ content: {
1254
+ "application/json": {
1255
+ /** @description Zero-based page index returned in this response. */
1256
+ page: number;
1257
+ /** @description Maximum number of items returned on each page. */
1258
+ pageSize: number;
1259
+ /** @description Total number of performance results across all pages. */
1260
+ totalCount: number;
1261
+ /** @description Performance results in this page. */
1262
+ results: {
1263
+ /**
1264
+ * Format: uuid
1265
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
1266
+ */
1267
+ mesheryId?: string;
1268
+ /** @description Human-readable name of the performance result. */
1269
+ name?: string;
1270
+ /** @description Service mesh under test for this result. */
1271
+ mesh?: string;
1272
+ /**
1273
+ * Format: uuid
1274
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
1275
+ */
1276
+ performanceProfile?: string | null;
1277
+ /** @description Provider-assigned test identifier for this result. */
1278
+ testId?: string;
1279
+ /** @description Raw load-generator output for this performance result. */
1280
+ runnerResults?: {
1281
+ [key: string]: unknown;
1282
+ };
1283
+ /** @description Server-side metrics collected for this performance result. */
1284
+ serverMetrics?: {
1285
+ [key: string]: unknown;
1286
+ };
1287
+ /** @description Server board configuration associated with this performance result. */
1288
+ serverBoardConfig?: {
1289
+ [key: string]: unknown;
1290
+ };
1291
+ /**
1292
+ * Format: date-time
1293
+ * @description Time when the load test started.
1294
+ */
1295
+ testStartTime?: string;
1296
+ /**
1297
+ * Format: uuid
1298
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
1299
+ */
1300
+ userId?: string;
1301
+ /**
1302
+ * Format: date-time
1303
+ * @description Timestamp when the performance result was created.
1304
+ */
1305
+ createdAt?: string;
1306
+ /**
1307
+ * Format: date-time
1308
+ * @description Timestamp when the performance result was last updated.
1309
+ */
1310
+ updatedAt?: string;
1311
+ }[];
1312
+ };
1313
+ };
1314
+ };
1315
+ /** @description Invalid request body or request param */
1316
+ 400: {
1317
+ headers: {
1318
+ [name: string]: unknown;
1319
+ };
1320
+ content: {
1321
+ "text/plain": string;
1322
+ };
1323
+ };
1324
+ /** @description Expired JWT token used or insufficient privilege */
1325
+ 401: {
1326
+ headers: {
1327
+ [name: string]: unknown;
1328
+ };
1329
+ content: {
1330
+ "text/plain": string;
1331
+ };
1332
+ };
1333
+ /** @description Result not found */
1334
+ 404: {
1335
+ headers: {
1336
+ [name: string]: unknown;
1337
+ };
1338
+ content: {
1339
+ "text/plain": string;
1340
+ };
1341
+ };
1342
+ /** @description Internal server error */
1343
+ 500: {
1344
+ headers: {
1345
+ [name: string]: unknown;
1346
+ };
1347
+ content: {
1348
+ "text/plain": string;
1349
+ };
1350
+ };
1351
+ };
1352
+ };
1353
+ getPerformanceProfileResult: {
1354
+ parameters: {
1355
+ query?: never;
1356
+ header?: never;
1357
+ path: {
1358
+ /** @description Performance profile ID. */
1359
+ performanceProfileId: string;
1360
+ /** @description Performance result ID. */
1361
+ resultId: string;
1362
+ };
1363
+ cookie?: never;
1364
+ };
1365
+ requestBody?: never;
1366
+ responses: {
1367
+ /** @description Performance result */
1368
+ 200: {
1369
+ headers: {
1370
+ [name: string]: unknown;
1371
+ };
1372
+ content: {
1373
+ "application/json": {
1374
+ /**
1375
+ * Format: uuid
1376
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
1377
+ */
1378
+ mesheryId?: string;
1379
+ /** @description Human-readable name of the performance result. */
1380
+ name?: string;
1381
+ /** @description Service mesh under test for this result. */
1382
+ mesh?: string;
1383
+ /**
1384
+ * Format: uuid
1385
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
1386
+ */
1387
+ performanceProfile?: string | null;
1388
+ /** @description Provider-assigned test identifier for this result. */
1389
+ testId?: string;
1390
+ /** @description Raw load-generator output for this performance result. */
1391
+ runnerResults?: {
1392
+ [key: string]: unknown;
1393
+ };
1394
+ /** @description Server-side metrics collected for this performance result. */
1395
+ serverMetrics?: {
1396
+ [key: string]: unknown;
1397
+ };
1398
+ /** @description Server board configuration associated with this performance result. */
1399
+ serverBoardConfig?: {
1400
+ [key: string]: unknown;
1401
+ };
1402
+ /**
1403
+ * Format: date-time
1404
+ * @description Time when the load test started.
1405
+ */
1406
+ testStartTime?: string;
1407
+ /**
1408
+ * Format: uuid
1409
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
1410
+ */
1411
+ userId?: string;
1412
+ /**
1413
+ * Format: date-time
1414
+ * @description Timestamp when the performance result was created.
1415
+ */
1416
+ createdAt?: string;
1417
+ /**
1418
+ * Format: date-time
1419
+ * @description Timestamp when the performance result was last updated.
1420
+ */
1421
+ updatedAt?: string;
1422
+ };
1423
+ };
1424
+ };
1425
+ /** @description Invalid request body or request param */
1426
+ 400: {
1427
+ headers: {
1428
+ [name: string]: unknown;
1429
+ };
1430
+ content: {
1431
+ "text/plain": string;
1432
+ };
1433
+ };
1434
+ /** @description Expired JWT token used or insufficient privilege */
1435
+ 401: {
1436
+ headers: {
1437
+ [name: string]: unknown;
1438
+ };
1439
+ content: {
1440
+ "text/plain": string;
1441
+ };
1442
+ };
1443
+ /** @description Result not found */
1444
+ 404: {
1445
+ headers: {
1446
+ [name: string]: unknown;
1447
+ };
1448
+ content: {
1449
+ "text/plain": string;
1450
+ };
1451
+ };
1452
+ /** @description Internal server error */
1453
+ 500: {
1454
+ headers: {
1455
+ [name: string]: unknown;
1456
+ };
1457
+ content: {
1458
+ "text/plain": string;
1459
+ };
1460
+ };
1461
+ };
1462
+ };
1463
+ getPerformanceResults: {
1464
+ parameters: {
1465
+ query?: {
1466
+ /** @description Get responses by page */
1467
+ page?: string;
1468
+ /** @description Get responses by pagesize */
1469
+ pagesize?: string;
1470
+ /** @description Get responses that match search param value */
1471
+ search?: string;
1472
+ /** @description Get ordered responses */
1473
+ order?: string;
1474
+ /** @description Start date for filtering results by test start time, in YYYY-MM-DD format. */
1475
+ from?: string;
1476
+ /** @description End date for filtering results by test start time, in YYYY-MM-DD format. */
1477
+ to?: string;
1478
+ };
1479
+ header?: never;
1480
+ path?: never;
1481
+ cookie?: never;
1482
+ };
1483
+ requestBody?: never;
1484
+ responses: {
1485
+ /** @description Performance results */
1486
+ 200: {
1487
+ headers: {
1488
+ [name: string]: unknown;
1489
+ };
1490
+ content: {
1491
+ "application/json": {
1492
+ /** @description Zero-based page index returned in this response. */
1493
+ page: number;
1494
+ /** @description Maximum number of items returned on each page. */
1495
+ pageSize: number;
1496
+ /** @description Total number of performance results across all pages. */
1497
+ totalCount: number;
1498
+ /** @description Performance results in this page. */
1499
+ results: {
1500
+ /**
1501
+ * Format: uuid
1502
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
1503
+ */
1504
+ mesheryId?: string;
1505
+ /** @description Human-readable name of the performance result. */
1506
+ name?: string;
1507
+ /** @description Service mesh under test for this result. */
1508
+ mesh?: string;
1509
+ /**
1510
+ * Format: uuid
1511
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
1512
+ */
1513
+ performanceProfile?: string | null;
1514
+ /** @description Provider-assigned test identifier for this result. */
1515
+ testId?: string;
1516
+ /** @description Raw load-generator output for this performance result. */
1517
+ runnerResults?: {
1518
+ [key: string]: unknown;
1519
+ };
1520
+ /** @description Server-side metrics collected for this performance result. */
1521
+ serverMetrics?: {
1522
+ [key: string]: unknown;
1523
+ };
1524
+ /** @description Server board configuration associated with this performance result. */
1525
+ serverBoardConfig?: {
1526
+ [key: string]: unknown;
1527
+ };
1528
+ /**
1529
+ * Format: date-time
1530
+ * @description Time when the load test started.
1531
+ */
1532
+ testStartTime?: string;
1533
+ /**
1534
+ * Format: uuid
1535
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
1536
+ */
1537
+ userId?: string;
1538
+ /**
1539
+ * Format: date-time
1540
+ * @description Timestamp when the performance result was created.
1541
+ */
1542
+ createdAt?: string;
1543
+ /**
1544
+ * Format: date-time
1545
+ * @description Timestamp when the performance result was last updated.
1546
+ */
1547
+ updatedAt?: string;
1548
+ }[];
1549
+ };
1550
+ };
1551
+ };
1552
+ /** @description Invalid request body or request param */
1553
+ 400: {
1554
+ headers: {
1555
+ [name: string]: unknown;
1556
+ };
1557
+ content: {
1558
+ "text/plain": string;
1559
+ };
1560
+ };
1561
+ /** @description Expired JWT token used or insufficient privilege */
1562
+ 401: {
1563
+ headers: {
1564
+ [name: string]: unknown;
1565
+ };
1566
+ content: {
1567
+ "text/plain": string;
1568
+ };
1569
+ };
1570
+ /** @description Internal server error */
1571
+ 500: {
1572
+ headers: {
1573
+ [name: string]: unknown;
1574
+ };
1575
+ content: {
1576
+ "text/plain": string;
1577
+ };
1578
+ };
1579
+ };
1580
+ };
973
1581
  }