@openshift-migration-advisor/agent-sdk 0.8.0 → 0.12.0-914fe80385ee

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.
Files changed (202) hide show
  1. package/.openapi-generator/FILES +50 -2
  2. package/.openapi-generator/VERSION +1 -1
  3. package/README.md +56 -17
  4. package/dist/apis/DefaultApi.d.ts +706 -126
  5. package/dist/apis/DefaultApi.js +916 -285
  6. package/dist/esm/apis/DefaultApi.d.ts +706 -126
  7. package/dist/esm/apis/DefaultApi.js +898 -267
  8. package/dist/esm/models/BenchmarkRun.d.ts +104 -0
  9. package/dist/esm/models/BenchmarkRun.js +85 -0
  10. package/dist/esm/models/DatastoreDetail.d.ts +90 -0
  11. package/dist/esm/models/DatastoreDetail.js +74 -0
  12. package/dist/esm/models/DatastorePair.d.ts +50 -0
  13. package/dist/esm/models/DatastorePair.js +53 -0
  14. package/dist/esm/models/EstimateRange.d.ts +44 -0
  15. package/dist/esm/models/EstimateRange.js +45 -0
  16. package/dist/esm/models/ForecastStats.d.ts +87 -0
  17. package/dist/esm/models/ForecastStats.js +64 -0
  18. package/dist/esm/models/ForecasterDatastoresRequest.d.ts +33 -0
  19. package/dist/esm/models/ForecasterDatastoresRequest.js +42 -0
  20. package/dist/esm/models/ForecasterPairStatus.d.ts +98 -0
  21. package/dist/esm/models/ForecasterPairStatus.js +82 -0
  22. package/dist/esm/models/ForecasterStartRequest.d.ts +58 -0
  23. package/dist/esm/models/ForecasterStartRequest.js +53 -0
  24. package/dist/esm/models/ForecasterStatus.d.ts +47 -0
  25. package/dist/esm/models/ForecasterStatus.js +53 -0
  26. package/dist/esm/models/InspectorStatus.d.ts +20 -7
  27. package/dist/esm/models/InspectorStatus.js +12 -7
  28. package/dist/esm/models/PairCapability.d.ts +60 -0
  29. package/dist/esm/models/PairCapability.js +64 -0
  30. package/dist/esm/models/PairCapabilityRequest.d.ts +40 -0
  31. package/dist/esm/models/PairCapabilityRequest.js +47 -0
  32. package/dist/esm/models/PutForecasterCredentials403Response.d.ts +38 -0
  33. package/dist/esm/models/PutForecasterCredentials403Response.js +43 -0
  34. package/dist/esm/models/RightsizingClusterListResponse.d.ts +39 -0
  35. package/dist/esm/models/RightsizingClusterListResponse.js +48 -0
  36. package/dist/esm/models/RightsizingClusterUtilization.d.ts +112 -0
  37. package/dist/esm/models/RightsizingClusterUtilization.js +95 -0
  38. package/dist/esm/models/RightsizingCollectRequest.d.ts +70 -0
  39. package/dist/esm/models/RightsizingCollectRequest.js +56 -0
  40. package/dist/esm/models/RightsizingMetricStats.d.ts +62 -0
  41. package/dist/esm/models/RightsizingMetricStats.js +63 -0
  42. package/dist/esm/models/RightsizingReport.d.ts +81 -0
  43. package/dist/esm/models/RightsizingReport.js +76 -0
  44. package/dist/esm/models/RightsizingReportListResponse.d.ts +39 -0
  45. package/dist/esm/models/RightsizingReportListResponse.js +48 -0
  46. package/dist/esm/models/RightsizingReportSummary.d.ts +74 -0
  47. package/dist/esm/models/RightsizingReportSummary.js +71 -0
  48. package/dist/esm/models/RightsizingVMReport.d.ts +53 -0
  49. package/dist/esm/models/RightsizingVMReport.js +57 -0
  50. package/dist/esm/models/StartInspectionRequest.d.ts +32 -0
  51. package/dist/esm/models/StartInspectionRequest.js +43 -0
  52. package/dist/esm/models/StopForecasterPair202Response.d.ts +45 -0
  53. package/dist/esm/models/StopForecasterPair202Response.js +49 -0
  54. package/dist/esm/models/VMs.d.ts +18 -0
  55. package/dist/esm/models/VMs.js +4 -0
  56. package/dist/esm/models/VirtualMachine.d.ts +31 -1
  57. package/dist/esm/models/VirtualMachine.js +12 -4
  58. package/dist/esm/models/VirtualMachineDetail.d.ts +3 -3
  59. package/dist/esm/models/VirtualMachineDetail.js +3 -3
  60. package/dist/esm/models/VmInspectionConcern.d.ts +44 -0
  61. package/dist/esm/models/VmInspectionConcern.js +51 -0
  62. package/dist/esm/models/VmInspectionResults.d.ts +33 -0
  63. package/dist/esm/models/VmInspectionResults.js +42 -0
  64. package/dist/esm/models/VmInspectionStatus.d.ts +0 -1
  65. package/dist/esm/models/VmInspectionStatus.js +1 -2
  66. package/dist/esm/models/VmUtilizationDetails.d.ts +116 -0
  67. package/dist/esm/models/VmUtilizationDetails.js +99 -0
  68. package/dist/esm/models/index.d.ts +25 -1
  69. package/dist/esm/models/index.js +25 -1
  70. package/dist/esm/runtime.js +1 -1
  71. package/dist/models/BenchmarkRun.d.ts +104 -0
  72. package/dist/models/BenchmarkRun.js +92 -0
  73. package/dist/models/DatastoreDetail.d.ts +90 -0
  74. package/dist/models/DatastoreDetail.js +82 -0
  75. package/dist/models/DatastorePair.d.ts +50 -0
  76. package/dist/models/DatastorePair.js +60 -0
  77. package/dist/models/EstimateRange.d.ts +44 -0
  78. package/dist/models/EstimateRange.js +52 -0
  79. package/dist/models/ForecastStats.d.ts +87 -0
  80. package/dist/models/ForecastStats.js +71 -0
  81. package/dist/models/ForecasterDatastoresRequest.d.ts +33 -0
  82. package/dist/models/ForecasterDatastoresRequest.js +49 -0
  83. package/dist/models/ForecasterPairStatus.d.ts +98 -0
  84. package/dist/models/ForecasterPairStatus.js +90 -0
  85. package/dist/models/ForecasterStartRequest.d.ts +58 -0
  86. package/dist/models/ForecasterStartRequest.js +60 -0
  87. package/dist/models/ForecasterStatus.d.ts +47 -0
  88. package/dist/models/ForecasterStatus.js +61 -0
  89. package/dist/models/InspectorStatus.d.ts +20 -7
  90. package/dist/models/InspectorStatus.js +12 -7
  91. package/dist/models/PairCapability.d.ts +60 -0
  92. package/dist/models/PairCapability.js +72 -0
  93. package/dist/models/PairCapabilityRequest.d.ts +40 -0
  94. package/dist/models/PairCapabilityRequest.js +54 -0
  95. package/dist/models/PutForecasterCredentials403Response.d.ts +38 -0
  96. package/dist/models/PutForecasterCredentials403Response.js +50 -0
  97. package/dist/models/RightsizingClusterListResponse.d.ts +39 -0
  98. package/dist/models/RightsizingClusterListResponse.js +55 -0
  99. package/dist/models/RightsizingClusterUtilization.d.ts +112 -0
  100. package/dist/models/RightsizingClusterUtilization.js +102 -0
  101. package/dist/models/RightsizingCollectRequest.d.ts +70 -0
  102. package/dist/models/RightsizingCollectRequest.js +63 -0
  103. package/dist/models/RightsizingMetricStats.d.ts +62 -0
  104. package/dist/models/RightsizingMetricStats.js +70 -0
  105. package/dist/models/RightsizingReport.d.ts +81 -0
  106. package/dist/models/RightsizingReport.js +83 -0
  107. package/dist/models/RightsizingReportListResponse.d.ts +39 -0
  108. package/dist/models/RightsizingReportListResponse.js +55 -0
  109. package/dist/models/RightsizingReportSummary.d.ts +74 -0
  110. package/dist/models/RightsizingReportSummary.js +78 -0
  111. package/dist/models/RightsizingVMReport.d.ts +53 -0
  112. package/dist/models/RightsizingVMReport.js +64 -0
  113. package/dist/models/StartInspectionRequest.d.ts +32 -0
  114. package/dist/models/StartInspectionRequest.js +50 -0
  115. package/dist/models/StopForecasterPair202Response.d.ts +45 -0
  116. package/dist/models/StopForecasterPair202Response.js +57 -0
  117. package/dist/models/VMs.d.ts +18 -0
  118. package/dist/models/VMs.js +4 -0
  119. package/dist/models/VirtualMachine.d.ts +31 -1
  120. package/dist/models/VirtualMachine.js +12 -4
  121. package/dist/models/VirtualMachineDetail.d.ts +3 -3
  122. package/dist/models/VirtualMachineDetail.js +3 -3
  123. package/dist/models/VmInspectionConcern.d.ts +44 -0
  124. package/dist/models/VmInspectionConcern.js +58 -0
  125. package/dist/models/VmInspectionResults.d.ts +33 -0
  126. package/dist/models/VmInspectionResults.js +49 -0
  127. package/dist/models/VmInspectionStatus.d.ts +0 -1
  128. package/dist/models/VmInspectionStatus.js +1 -2
  129. package/dist/models/VmUtilizationDetails.d.ts +116 -0
  130. package/dist/models/VmUtilizationDetails.js +106 -0
  131. package/dist/models/index.d.ts +25 -1
  132. package/dist/models/index.js +25 -1
  133. package/dist/runtime.js +1 -1
  134. package/docs/BenchmarkRun.md +58 -0
  135. package/docs/DatastoreDetail.md +50 -0
  136. package/docs/DatastorePair.md +40 -0
  137. package/docs/DefaultApi.md +1265 -240
  138. package/docs/EstimateRange.md +39 -0
  139. package/docs/ForecastStats.md +52 -0
  140. package/docs/ForecasterDatastoresRequest.md +34 -0
  141. package/docs/ForecasterPairStatus.md +52 -0
  142. package/docs/ForecasterStartRequest.md +42 -0
  143. package/docs/ForecasterStatus.md +36 -0
  144. package/docs/InspectorStatus.md +4 -0
  145. package/docs/PairCapability.md +40 -0
  146. package/docs/PairCapabilityRequest.md +36 -0
  147. package/docs/PutForecasterCredentials403Response.md +36 -0
  148. package/docs/RightsizingClusterListResponse.md +36 -0
  149. package/docs/RightsizingClusterUtilization.md +60 -0
  150. package/docs/RightsizingCollectRequest.md +46 -0
  151. package/docs/RightsizingMetricStats.md +44 -0
  152. package/docs/RightsizingReport.md +50 -0
  153. package/docs/RightsizingReportListResponse.md +36 -0
  154. package/docs/RightsizingReportSummary.md +49 -0
  155. package/docs/RightsizingVMReport.md +40 -0
  156. package/docs/{InspectorStartRequest.md → StartInspectionRequest.md} +5 -6
  157. package/docs/StopForecasterPair202Response.md +36 -0
  158. package/docs/VMs.md +4 -0
  159. package/docs/VirtualMachine.md +12 -2
  160. package/docs/VirtualMachineDetail.md +1 -1
  161. package/docs/VmInspectionConcern.md +39 -0
  162. package/docs/VmInspectionResults.md +35 -0
  163. package/docs/VmUtilizationDetails.md +62 -0
  164. package/package.json +1 -1
  165. package/src/apis/DefaultApi.ts +1548 -350
  166. package/src/models/BenchmarkRun.ts +171 -0
  167. package/src/models/DatastoreDetail.ts +146 -0
  168. package/src/models/DatastorePair.ts +92 -0
  169. package/src/models/EstimateRange.ts +81 -0
  170. package/src/models/ForecastStats.ts +147 -0
  171. package/src/models/ForecasterDatastoresRequest.ts +73 -0
  172. package/src/models/ForecasterPairStatus.ts +158 -0
  173. package/src/models/ForecasterStartRequest.ts +113 -0
  174. package/src/models/ForecasterStatus.ts +93 -0
  175. package/src/models/InspectorStatus.ts +37 -7
  176. package/src/models/PairCapability.ts +106 -0
  177. package/src/models/PairCapabilityRequest.ts +89 -0
  178. package/src/models/PutForecasterCredentials403Response.ts +73 -0
  179. package/src/models/RightsizingClusterListResponse.ts +83 -0
  180. package/src/models/RightsizingClusterUtilization.ts +185 -0
  181. package/src/models/RightsizingCollectRequest.ts +123 -0
  182. package/src/models/RightsizingMetricStats.ts +111 -0
  183. package/src/models/RightsizingReport.ts +146 -0
  184. package/src/models/RightsizingReportListResponse.ts +83 -0
  185. package/src/models/RightsizingReportSummary.ts +129 -0
  186. package/src/models/RightsizingVMReport.ts +101 -0
  187. package/src/models/StartInspectionRequest.ts +66 -0
  188. package/src/models/StopForecasterPair202Response.ts +83 -0
  189. package/src/models/VMs.ts +18 -0
  190. package/src/models/VirtualMachine.ts +43 -4
  191. package/src/models/VirtualMachineDetail.ts +11 -11
  192. package/src/models/VmInspectionConcern.ts +84 -0
  193. package/src/models/VmInspectionResults.ts +73 -0
  194. package/src/models/VmInspectionStatus.ts +1 -2
  195. package/src/models/VmUtilizationDetails.ts +192 -0
  196. package/src/models/index.ts +25 -1
  197. package/src/runtime.ts +1 -2
  198. package/dist/esm/models/InspectorStartRequest.d.ts +0 -39
  199. package/dist/esm/models/InspectorStartRequest.js +0 -48
  200. package/dist/models/InspectorStartRequest.d.ts +0 -39
  201. package/dist/models/InspectorStartRequest.js +0 -55
  202. package/src/models/InspectorStartRequest.ts +0 -83
@@ -0,0 +1,73 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Assisted Migration Agent API
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document: v1
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime.js';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface PutForecasterCredentials403Response
20
+ */
21
+ export interface PutForecasterCredentials403Response {
22
+ /**
23
+ *
24
+ * @type {string}
25
+ * @memberof PutForecasterCredentials403Response
26
+ */
27
+ error?: string;
28
+ /**
29
+ *
30
+ * @type {Array<string>}
31
+ * @memberof PutForecasterCredentials403Response
32
+ */
33
+ missingPrivileges?: Array<string>;
34
+ }
35
+
36
+ /**
37
+ * Check if a given object implements the PutForecasterCredentials403Response interface.
38
+ */
39
+ export function instanceOfPutForecasterCredentials403Response(value: object): value is PutForecasterCredentials403Response {
40
+ return true;
41
+ }
42
+
43
+ export function PutForecasterCredentials403ResponseFromJSON(json: any): PutForecasterCredentials403Response {
44
+ return PutForecasterCredentials403ResponseFromJSONTyped(json, false);
45
+ }
46
+
47
+ export function PutForecasterCredentials403ResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): PutForecasterCredentials403Response {
48
+ if (json == null) {
49
+ return json;
50
+ }
51
+ return {
52
+
53
+ 'error': json['error'] == null ? undefined : json['error'],
54
+ 'missingPrivileges': json['missingPrivileges'] == null ? undefined : json['missingPrivileges'],
55
+ };
56
+ }
57
+
58
+ export function PutForecasterCredentials403ResponseToJSON(json: any): PutForecasterCredentials403Response {
59
+ return PutForecasterCredentials403ResponseToJSONTyped(json, false);
60
+ }
61
+
62
+ export function PutForecasterCredentials403ResponseToJSONTyped(value?: PutForecasterCredentials403Response | null, ignoreDiscriminator: boolean = false): any {
63
+ if (value == null) {
64
+ return value;
65
+ }
66
+
67
+ return {
68
+
69
+ 'error': value['error'],
70
+ 'missingPrivileges': value['missingPrivileges'],
71
+ };
72
+ }
73
+
@@ -0,0 +1,83 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Assisted Migration Agent API
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document: v1
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime.js';
16
+ import type { RightsizingClusterUtilization } from './RightsizingClusterUtilization.js';
17
+ import {
18
+ RightsizingClusterUtilizationFromJSON,
19
+ RightsizingClusterUtilizationFromJSONTyped,
20
+ RightsizingClusterUtilizationToJSON,
21
+ RightsizingClusterUtilizationToJSONTyped,
22
+ } from './RightsizingClusterUtilization.js';
23
+
24
+ /**
25
+ *
26
+ * @export
27
+ * @interface RightsizingClusterListResponse
28
+ */
29
+ export interface RightsizingClusterListResponse {
30
+ /**
31
+ * The report ID this data was aggregated from
32
+ * @type {string}
33
+ * @memberof RightsizingClusterListResponse
34
+ */
35
+ reportId: string;
36
+ /**
37
+ *
38
+ * @type {Array<RightsizingClusterUtilization>}
39
+ * @memberof RightsizingClusterListResponse
40
+ */
41
+ clusters: Array<RightsizingClusterUtilization>;
42
+ }
43
+
44
+ /**
45
+ * Check if a given object implements the RightsizingClusterListResponse interface.
46
+ */
47
+ export function instanceOfRightsizingClusterListResponse(value: object): value is RightsizingClusterListResponse {
48
+ if (!('reportId' in value) || value['reportId'] === undefined) return false;
49
+ if (!('clusters' in value) || value['clusters'] === undefined) return false;
50
+ return true;
51
+ }
52
+
53
+ export function RightsizingClusterListResponseFromJSON(json: any): RightsizingClusterListResponse {
54
+ return RightsizingClusterListResponseFromJSONTyped(json, false);
55
+ }
56
+
57
+ export function RightsizingClusterListResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): RightsizingClusterListResponse {
58
+ if (json == null) {
59
+ return json;
60
+ }
61
+ return {
62
+
63
+ 'reportId': json['report_id'],
64
+ 'clusters': ((json['clusters'] as Array<any>).map(RightsizingClusterUtilizationFromJSON)),
65
+ };
66
+ }
67
+
68
+ export function RightsizingClusterListResponseToJSON(json: any): RightsizingClusterListResponse {
69
+ return RightsizingClusterListResponseToJSONTyped(json, false);
70
+ }
71
+
72
+ export function RightsizingClusterListResponseToJSONTyped(value?: RightsizingClusterListResponse | null, ignoreDiscriminator: boolean = false): any {
73
+ if (value == null) {
74
+ return value;
75
+ }
76
+
77
+ return {
78
+
79
+ 'report_id': value['reportId'],
80
+ 'clusters': ((value['clusters'] as Array<any>).map(RightsizingClusterUtilizationToJSON)),
81
+ };
82
+ }
83
+
@@ -0,0 +1,185 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Assisted Migration Agent API
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document: v1
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime.js';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface RightsizingClusterUtilization
20
+ */
21
+ export interface RightsizingClusterUtilization {
22
+ /**
23
+ * vSphere MoRef of the ClusterComputeResource (e.g. "domain-c123").
24
+ * @type {string}
25
+ * @memberof RightsizingClusterUtilization
26
+ */
27
+ clusterId: string;
28
+ /**
29
+ * Display name of the cluster as reported by vCenter (e.g. "production-cluster").
30
+ * @type {string}
31
+ * @memberof RightsizingClusterUtilization
32
+ */
33
+ clusterName: string;
34
+ /**
35
+ * Number of VMs with utilization data in this cluster
36
+ * @type {number}
37
+ * @memberof RightsizingClusterUtilization
38
+ */
39
+ vmCount: number;
40
+ /**
41
+ * SUM(vCPUs × cpu_avg%) / SUM(vCPUs) — weighted average CPU utilization (%)
42
+ * @type {number}
43
+ * @memberof RightsizingClusterUtilization
44
+ */
45
+ cpuAvg: number;
46
+ /**
47
+ * SUM(vCPUs × vm_p95%) / SUM(vCPUs). Weighted summary of per-VM p95 values — not a true cluster-wide p95 (which would require time-aligned samples).
48
+ *
49
+ * @type {number}
50
+ * @memberof RightsizingClusterUtilization
51
+ */
52
+ cpuP95: number;
53
+ /**
54
+ * Weighted summary of per-VM max values (see cpu_p95 note)
55
+ * @type {number}
56
+ * @memberof RightsizingClusterUtilization
57
+ */
58
+ cpuMax: number;
59
+ /**
60
+ * SUM(provisionedMB × mem_avg%) / SUM(provisionedMB) — weighted average memory utilization (%)
61
+ * @type {number}
62
+ * @memberof RightsizingClusterUtilization
63
+ */
64
+ memAvg: number;
65
+ /**
66
+ * Weighted summary of per-VM memory p95 values (see cpu_p95 note)
67
+ * @type {number}
68
+ * @memberof RightsizingClusterUtilization
69
+ */
70
+ memP95: number;
71
+ /**
72
+ * Weighted summary of per-VM memory max values (see cpu_p95 note)
73
+ * @type {number}
74
+ * @memberof RightsizingClusterUtilization
75
+ */
76
+ memMax: number;
77
+ /**
78
+ * SUM(provisionedKB × disk%) / SUM(provisionedKB) — weighted average disk utilization (%)
79
+ * @type {number}
80
+ * @memberof RightsizingClusterUtilization
81
+ */
82
+ disk: number;
83
+ /**
84
+ * SUM(vCPUs × confidence%) / SUM(vCPUs). vCPU-weighted data coverage (0–100 %). Interpret utilization cautiously when low.
85
+ *
86
+ * @type {number}
87
+ * @memberof RightsizingClusterUtilization
88
+ */
89
+ confidence: number;
90
+ /**
91
+ * Sum of vCPU counts across all VMs in the cluster
92
+ * @type {number}
93
+ * @memberof RightsizingClusterUtilization
94
+ */
95
+ totalProvisionedCpus: number;
96
+ /**
97
+ * Sum of provisioned RAM (MB) across all VMs in the cluster
98
+ * @type {number}
99
+ * @memberof RightsizingClusterUtilization
100
+ */
101
+ totalProvisionedMemoryMb: number;
102
+ /**
103
+ * Sum of provisioned disk (KB) across all VMs in the cluster
104
+ * @type {number}
105
+ * @memberof RightsizingClusterUtilization
106
+ */
107
+ totalProvisionedDiskKb: number;
108
+ }
109
+
110
+ /**
111
+ * Check if a given object implements the RightsizingClusterUtilization interface.
112
+ */
113
+ export function instanceOfRightsizingClusterUtilization(value: object): value is RightsizingClusterUtilization {
114
+ if (!('clusterId' in value) || value['clusterId'] === undefined) return false;
115
+ if (!('clusterName' in value) || value['clusterName'] === undefined) return false;
116
+ if (!('vmCount' in value) || value['vmCount'] === undefined) return false;
117
+ if (!('cpuAvg' in value) || value['cpuAvg'] === undefined) return false;
118
+ if (!('cpuP95' in value) || value['cpuP95'] === undefined) return false;
119
+ if (!('cpuMax' in value) || value['cpuMax'] === undefined) return false;
120
+ if (!('memAvg' in value) || value['memAvg'] === undefined) return false;
121
+ if (!('memP95' in value) || value['memP95'] === undefined) return false;
122
+ if (!('memMax' in value) || value['memMax'] === undefined) return false;
123
+ if (!('disk' in value) || value['disk'] === undefined) return false;
124
+ if (!('confidence' in value) || value['confidence'] === undefined) return false;
125
+ if (!('totalProvisionedCpus' in value) || value['totalProvisionedCpus'] === undefined) return false;
126
+ if (!('totalProvisionedMemoryMb' in value) || value['totalProvisionedMemoryMb'] === undefined) return false;
127
+ if (!('totalProvisionedDiskKb' in value) || value['totalProvisionedDiskKb'] === undefined) return false;
128
+ return true;
129
+ }
130
+
131
+ export function RightsizingClusterUtilizationFromJSON(json: any): RightsizingClusterUtilization {
132
+ return RightsizingClusterUtilizationFromJSONTyped(json, false);
133
+ }
134
+
135
+ export function RightsizingClusterUtilizationFromJSONTyped(json: any, ignoreDiscriminator: boolean): RightsizingClusterUtilization {
136
+ if (json == null) {
137
+ return json;
138
+ }
139
+ return {
140
+
141
+ 'clusterId': json['cluster_id'],
142
+ 'clusterName': json['cluster_name'],
143
+ 'vmCount': json['vm_count'],
144
+ 'cpuAvg': json['cpu_avg'],
145
+ 'cpuP95': json['cpu_p95'],
146
+ 'cpuMax': json['cpu_max'],
147
+ 'memAvg': json['mem_avg'],
148
+ 'memP95': json['mem_p95'],
149
+ 'memMax': json['mem_max'],
150
+ 'disk': json['disk'],
151
+ 'confidence': json['confidence'],
152
+ 'totalProvisionedCpus': json['total_provisioned_cpus'],
153
+ 'totalProvisionedMemoryMb': json['total_provisioned_memory_mb'],
154
+ 'totalProvisionedDiskKb': json['total_provisioned_disk_kb'],
155
+ };
156
+ }
157
+
158
+ export function RightsizingClusterUtilizationToJSON(json: any): RightsizingClusterUtilization {
159
+ return RightsizingClusterUtilizationToJSONTyped(json, false);
160
+ }
161
+
162
+ export function RightsizingClusterUtilizationToJSONTyped(value?: RightsizingClusterUtilization | null, ignoreDiscriminator: boolean = false): any {
163
+ if (value == null) {
164
+ return value;
165
+ }
166
+
167
+ return {
168
+
169
+ 'cluster_id': value['clusterId'],
170
+ 'cluster_name': value['clusterName'],
171
+ 'vm_count': value['vmCount'],
172
+ 'cpu_avg': value['cpuAvg'],
173
+ 'cpu_p95': value['cpuP95'],
174
+ 'cpu_max': value['cpuMax'],
175
+ 'mem_avg': value['memAvg'],
176
+ 'mem_p95': value['memP95'],
177
+ 'mem_max': value['memMax'],
178
+ 'disk': value['disk'],
179
+ 'confidence': value['confidence'],
180
+ 'total_provisioned_cpus': value['totalProvisionedCpus'],
181
+ 'total_provisioned_memory_mb': value['totalProvisionedMemoryMb'],
182
+ 'total_provisioned_disk_kb': value['totalProvisionedDiskKb'],
183
+ };
184
+ }
185
+
@@ -0,0 +1,123 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Assisted Migration Agent API
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document: v1
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime.js';
16
+ import type { VcenterCredentials } from './VcenterCredentials.js';
17
+ import {
18
+ VcenterCredentialsFromJSON,
19
+ VcenterCredentialsFromJSONTyped,
20
+ VcenterCredentialsToJSON,
21
+ VcenterCredentialsToJSONTyped,
22
+ } from './VcenterCredentials.js';
23
+
24
+ /**
25
+ *
26
+ * @export
27
+ * @interface RightsizingCollectRequest
28
+ */
29
+ export interface RightsizingCollectRequest {
30
+ /**
31
+ *
32
+ * @type {VcenterCredentials}
33
+ * @memberof RightsizingCollectRequest
34
+ */
35
+ credentials: VcenterCredentials;
36
+ /**
37
+ * Lookback window in hours (default 720 = 30 days)
38
+ * @type {number}
39
+ * @memberof RightsizingCollectRequest
40
+ */
41
+ lookbackHours?: number;
42
+ /**
43
+ * vSphere historical interval ID in seconds (300=day, 1800=week, 7200=month)
44
+ * @type {number}
45
+ * @memberof RightsizingCollectRequest
46
+ */
47
+ intervalId?: number;
48
+ /**
49
+ * Filter VMs by name substring
50
+ * @type {string}
51
+ * @memberof RightsizingCollectRequest
52
+ */
53
+ nameFilter?: string;
54
+ /**
55
+ * MoRef value of a ClusterComputeResource to scope discovery (e.g. domain-c123)
56
+ * @type {string}
57
+ * @memberof RightsizingCollectRequest
58
+ */
59
+ clusterId?: string;
60
+ /**
61
+ * Number of VMs per QueryPerf round-trip
62
+ * @type {number}
63
+ * @memberof RightsizingCollectRequest
64
+ */
65
+ batchSize?: number;
66
+ /**
67
+ * If true, discover VMs live from vSphere. If false (default), use the VMs already stored in the local inventory.
68
+ *
69
+ * @type {boolean}
70
+ * @memberof RightsizingCollectRequest
71
+ */
72
+ discoverVms?: boolean;
73
+ }
74
+
75
+ /**
76
+ * Check if a given object implements the RightsizingCollectRequest interface.
77
+ */
78
+ export function instanceOfRightsizingCollectRequest(value: object): value is RightsizingCollectRequest {
79
+ if (!('credentials' in value) || value['credentials'] === undefined) return false;
80
+ return true;
81
+ }
82
+
83
+ export function RightsizingCollectRequestFromJSON(json: any): RightsizingCollectRequest {
84
+ return RightsizingCollectRequestFromJSONTyped(json, false);
85
+ }
86
+
87
+ export function RightsizingCollectRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): RightsizingCollectRequest {
88
+ if (json == null) {
89
+ return json;
90
+ }
91
+ return {
92
+
93
+ 'credentials': VcenterCredentialsFromJSON(json['credentials']),
94
+ 'lookbackHours': json['lookback_hours'] == null ? undefined : json['lookback_hours'],
95
+ 'intervalId': json['interval_id'] == null ? undefined : json['interval_id'],
96
+ 'nameFilter': json['name_filter'] == null ? undefined : json['name_filter'],
97
+ 'clusterId': json['cluster_id'] == null ? undefined : json['cluster_id'],
98
+ 'batchSize': json['batch_size'] == null ? undefined : json['batch_size'],
99
+ 'discoverVms': json['discover_vms'] == null ? undefined : json['discover_vms'],
100
+ };
101
+ }
102
+
103
+ export function RightsizingCollectRequestToJSON(json: any): RightsizingCollectRequest {
104
+ return RightsizingCollectRequestToJSONTyped(json, false);
105
+ }
106
+
107
+ export function RightsizingCollectRequestToJSONTyped(value?: RightsizingCollectRequest | null, ignoreDiscriminator: boolean = false): any {
108
+ if (value == null) {
109
+ return value;
110
+ }
111
+
112
+ return {
113
+
114
+ 'credentials': VcenterCredentialsToJSON(value['credentials']),
115
+ 'lookback_hours': value['lookbackHours'],
116
+ 'interval_id': value['intervalId'],
117
+ 'name_filter': value['nameFilter'],
118
+ 'cluster_id': value['clusterId'],
119
+ 'batch_size': value['batchSize'],
120
+ 'discover_vms': value['discoverVms'],
121
+ };
122
+ }
123
+
@@ -0,0 +1,111 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Assisted Migration Agent API
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document: v1
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime.js';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface RightsizingMetricStats
20
+ */
21
+ export interface RightsizingMetricStats {
22
+ /**
23
+ *
24
+ * @type {number}
25
+ * @memberof RightsizingMetricStats
26
+ */
27
+ sampleCount: number;
28
+ /**
29
+ *
30
+ * @type {number}
31
+ * @memberof RightsizingMetricStats
32
+ */
33
+ average: number;
34
+ /**
35
+ *
36
+ * @type {number}
37
+ * @memberof RightsizingMetricStats
38
+ */
39
+ p95: number;
40
+ /**
41
+ *
42
+ * @type {number}
43
+ * @memberof RightsizingMetricStats
44
+ */
45
+ p99: number;
46
+ /**
47
+ *
48
+ * @type {number}
49
+ * @memberof RightsizingMetricStats
50
+ */
51
+ max: number;
52
+ /**
53
+ *
54
+ * @type {number}
55
+ * @memberof RightsizingMetricStats
56
+ */
57
+ latest: number;
58
+ }
59
+
60
+ /**
61
+ * Check if a given object implements the RightsizingMetricStats interface.
62
+ */
63
+ export function instanceOfRightsizingMetricStats(value: object): value is RightsizingMetricStats {
64
+ if (!('sampleCount' in value) || value['sampleCount'] === undefined) return false;
65
+ if (!('average' in value) || value['average'] === undefined) return false;
66
+ if (!('p95' in value) || value['p95'] === undefined) return false;
67
+ if (!('p99' in value) || value['p99'] === undefined) return false;
68
+ if (!('max' in value) || value['max'] === undefined) return false;
69
+ if (!('latest' in value) || value['latest'] === undefined) return false;
70
+ return true;
71
+ }
72
+
73
+ export function RightsizingMetricStatsFromJSON(json: any): RightsizingMetricStats {
74
+ return RightsizingMetricStatsFromJSONTyped(json, false);
75
+ }
76
+
77
+ export function RightsizingMetricStatsFromJSONTyped(json: any, ignoreDiscriminator: boolean): RightsizingMetricStats {
78
+ if (json == null) {
79
+ return json;
80
+ }
81
+ return {
82
+
83
+ 'sampleCount': json['sample_count'],
84
+ 'average': json['average'],
85
+ 'p95': json['p95'],
86
+ 'p99': json['p99'],
87
+ 'max': json['max'],
88
+ 'latest': json['latest'],
89
+ };
90
+ }
91
+
92
+ export function RightsizingMetricStatsToJSON(json: any): RightsizingMetricStats {
93
+ return RightsizingMetricStatsToJSONTyped(json, false);
94
+ }
95
+
96
+ export function RightsizingMetricStatsToJSONTyped(value?: RightsizingMetricStats | null, ignoreDiscriminator: boolean = false): any {
97
+ if (value == null) {
98
+ return value;
99
+ }
100
+
101
+ return {
102
+
103
+ 'sample_count': value['sampleCount'],
104
+ 'average': value['average'],
105
+ 'p95': value['p95'],
106
+ 'p99': value['p99'],
107
+ 'max': value['max'],
108
+ 'latest': value['latest'],
109
+ };
110
+ }
111
+