@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.
- package/.openapi-generator/FILES +50 -2
- package/.openapi-generator/VERSION +1 -1
- package/README.md +56 -17
- package/dist/apis/DefaultApi.d.ts +706 -126
- package/dist/apis/DefaultApi.js +916 -285
- package/dist/esm/apis/DefaultApi.d.ts +706 -126
- package/dist/esm/apis/DefaultApi.js +898 -267
- package/dist/esm/models/BenchmarkRun.d.ts +104 -0
- package/dist/esm/models/BenchmarkRun.js +85 -0
- package/dist/esm/models/DatastoreDetail.d.ts +90 -0
- package/dist/esm/models/DatastoreDetail.js +74 -0
- package/dist/esm/models/DatastorePair.d.ts +50 -0
- package/dist/esm/models/DatastorePair.js +53 -0
- package/dist/esm/models/EstimateRange.d.ts +44 -0
- package/dist/esm/models/EstimateRange.js +45 -0
- package/dist/esm/models/ForecastStats.d.ts +87 -0
- package/dist/esm/models/ForecastStats.js +64 -0
- package/dist/esm/models/ForecasterDatastoresRequest.d.ts +33 -0
- package/dist/esm/models/ForecasterDatastoresRequest.js +42 -0
- package/dist/esm/models/ForecasterPairStatus.d.ts +98 -0
- package/dist/esm/models/ForecasterPairStatus.js +82 -0
- package/dist/esm/models/ForecasterStartRequest.d.ts +58 -0
- package/dist/esm/models/ForecasterStartRequest.js +53 -0
- package/dist/esm/models/ForecasterStatus.d.ts +47 -0
- package/dist/esm/models/ForecasterStatus.js +53 -0
- package/dist/esm/models/InspectorStatus.d.ts +20 -7
- package/dist/esm/models/InspectorStatus.js +12 -7
- package/dist/esm/models/PairCapability.d.ts +60 -0
- package/dist/esm/models/PairCapability.js +64 -0
- package/dist/esm/models/PairCapabilityRequest.d.ts +40 -0
- package/dist/esm/models/PairCapabilityRequest.js +47 -0
- package/dist/esm/models/PutForecasterCredentials403Response.d.ts +38 -0
- package/dist/esm/models/PutForecasterCredentials403Response.js +43 -0
- package/dist/esm/models/RightsizingClusterListResponse.d.ts +39 -0
- package/dist/esm/models/RightsizingClusterListResponse.js +48 -0
- package/dist/esm/models/RightsizingClusterUtilization.d.ts +112 -0
- package/dist/esm/models/RightsizingClusterUtilization.js +95 -0
- package/dist/esm/models/RightsizingCollectRequest.d.ts +70 -0
- package/dist/esm/models/RightsizingCollectRequest.js +56 -0
- package/dist/esm/models/RightsizingMetricStats.d.ts +62 -0
- package/dist/esm/models/RightsizingMetricStats.js +63 -0
- package/dist/esm/models/RightsizingReport.d.ts +81 -0
- package/dist/esm/models/RightsizingReport.js +76 -0
- package/dist/esm/models/RightsizingReportListResponse.d.ts +39 -0
- package/dist/esm/models/RightsizingReportListResponse.js +48 -0
- package/dist/esm/models/RightsizingReportSummary.d.ts +74 -0
- package/dist/esm/models/RightsizingReportSummary.js +71 -0
- package/dist/esm/models/RightsizingVMReport.d.ts +53 -0
- package/dist/esm/models/RightsizingVMReport.js +57 -0
- package/dist/esm/models/StartInspectionRequest.d.ts +32 -0
- package/dist/esm/models/StartInspectionRequest.js +43 -0
- package/dist/esm/models/StopForecasterPair202Response.d.ts +45 -0
- package/dist/esm/models/StopForecasterPair202Response.js +49 -0
- package/dist/esm/models/VMs.d.ts +18 -0
- package/dist/esm/models/VMs.js +4 -0
- package/dist/esm/models/VirtualMachine.d.ts +31 -1
- package/dist/esm/models/VirtualMachine.js +12 -4
- package/dist/esm/models/VirtualMachineDetail.d.ts +3 -3
- package/dist/esm/models/VirtualMachineDetail.js +3 -3
- package/dist/esm/models/VmInspectionConcern.d.ts +44 -0
- package/dist/esm/models/VmInspectionConcern.js +51 -0
- package/dist/esm/models/VmInspectionResults.d.ts +33 -0
- package/dist/esm/models/VmInspectionResults.js +42 -0
- package/dist/esm/models/VmInspectionStatus.d.ts +0 -1
- package/dist/esm/models/VmInspectionStatus.js +1 -2
- package/dist/esm/models/VmUtilizationDetails.d.ts +116 -0
- package/dist/esm/models/VmUtilizationDetails.js +99 -0
- package/dist/esm/models/index.d.ts +25 -1
- package/dist/esm/models/index.js +25 -1
- package/dist/esm/runtime.js +1 -1
- package/dist/models/BenchmarkRun.d.ts +104 -0
- package/dist/models/BenchmarkRun.js +92 -0
- package/dist/models/DatastoreDetail.d.ts +90 -0
- package/dist/models/DatastoreDetail.js +82 -0
- package/dist/models/DatastorePair.d.ts +50 -0
- package/dist/models/DatastorePair.js +60 -0
- package/dist/models/EstimateRange.d.ts +44 -0
- package/dist/models/EstimateRange.js +52 -0
- package/dist/models/ForecastStats.d.ts +87 -0
- package/dist/models/ForecastStats.js +71 -0
- package/dist/models/ForecasterDatastoresRequest.d.ts +33 -0
- package/dist/models/ForecasterDatastoresRequest.js +49 -0
- package/dist/models/ForecasterPairStatus.d.ts +98 -0
- package/dist/models/ForecasterPairStatus.js +90 -0
- package/dist/models/ForecasterStartRequest.d.ts +58 -0
- package/dist/models/ForecasterStartRequest.js +60 -0
- package/dist/models/ForecasterStatus.d.ts +47 -0
- package/dist/models/ForecasterStatus.js +61 -0
- package/dist/models/InspectorStatus.d.ts +20 -7
- package/dist/models/InspectorStatus.js +12 -7
- package/dist/models/PairCapability.d.ts +60 -0
- package/dist/models/PairCapability.js +72 -0
- package/dist/models/PairCapabilityRequest.d.ts +40 -0
- package/dist/models/PairCapabilityRequest.js +54 -0
- package/dist/models/PutForecasterCredentials403Response.d.ts +38 -0
- package/dist/models/PutForecasterCredentials403Response.js +50 -0
- package/dist/models/RightsizingClusterListResponse.d.ts +39 -0
- package/dist/models/RightsizingClusterListResponse.js +55 -0
- package/dist/models/RightsizingClusterUtilization.d.ts +112 -0
- package/dist/models/RightsizingClusterUtilization.js +102 -0
- package/dist/models/RightsizingCollectRequest.d.ts +70 -0
- package/dist/models/RightsizingCollectRequest.js +63 -0
- package/dist/models/RightsizingMetricStats.d.ts +62 -0
- package/dist/models/RightsizingMetricStats.js +70 -0
- package/dist/models/RightsizingReport.d.ts +81 -0
- package/dist/models/RightsizingReport.js +83 -0
- package/dist/models/RightsizingReportListResponse.d.ts +39 -0
- package/dist/models/RightsizingReportListResponse.js +55 -0
- package/dist/models/RightsizingReportSummary.d.ts +74 -0
- package/dist/models/RightsizingReportSummary.js +78 -0
- package/dist/models/RightsizingVMReport.d.ts +53 -0
- package/dist/models/RightsizingVMReport.js +64 -0
- package/dist/models/StartInspectionRequest.d.ts +32 -0
- package/dist/models/StartInspectionRequest.js +50 -0
- package/dist/models/StopForecasterPair202Response.d.ts +45 -0
- package/dist/models/StopForecasterPair202Response.js +57 -0
- package/dist/models/VMs.d.ts +18 -0
- package/dist/models/VMs.js +4 -0
- package/dist/models/VirtualMachine.d.ts +31 -1
- package/dist/models/VirtualMachine.js +12 -4
- package/dist/models/VirtualMachineDetail.d.ts +3 -3
- package/dist/models/VirtualMachineDetail.js +3 -3
- package/dist/models/VmInspectionConcern.d.ts +44 -0
- package/dist/models/VmInspectionConcern.js +58 -0
- package/dist/models/VmInspectionResults.d.ts +33 -0
- package/dist/models/VmInspectionResults.js +49 -0
- package/dist/models/VmInspectionStatus.d.ts +0 -1
- package/dist/models/VmInspectionStatus.js +1 -2
- package/dist/models/VmUtilizationDetails.d.ts +116 -0
- package/dist/models/VmUtilizationDetails.js +106 -0
- package/dist/models/index.d.ts +25 -1
- package/dist/models/index.js +25 -1
- package/dist/runtime.js +1 -1
- package/docs/BenchmarkRun.md +58 -0
- package/docs/DatastoreDetail.md +50 -0
- package/docs/DatastorePair.md +40 -0
- package/docs/DefaultApi.md +1265 -240
- package/docs/EstimateRange.md +39 -0
- package/docs/ForecastStats.md +52 -0
- package/docs/ForecasterDatastoresRequest.md +34 -0
- package/docs/ForecasterPairStatus.md +52 -0
- package/docs/ForecasterStartRequest.md +42 -0
- package/docs/ForecasterStatus.md +36 -0
- package/docs/InspectorStatus.md +4 -0
- package/docs/PairCapability.md +40 -0
- package/docs/PairCapabilityRequest.md +36 -0
- package/docs/PutForecasterCredentials403Response.md +36 -0
- package/docs/RightsizingClusterListResponse.md +36 -0
- package/docs/RightsizingClusterUtilization.md +60 -0
- package/docs/RightsizingCollectRequest.md +46 -0
- package/docs/RightsizingMetricStats.md +44 -0
- package/docs/RightsizingReport.md +50 -0
- package/docs/RightsizingReportListResponse.md +36 -0
- package/docs/RightsizingReportSummary.md +49 -0
- package/docs/RightsizingVMReport.md +40 -0
- package/docs/{InspectorStartRequest.md → StartInspectionRequest.md} +5 -6
- package/docs/StopForecasterPair202Response.md +36 -0
- package/docs/VMs.md +4 -0
- package/docs/VirtualMachine.md +12 -2
- package/docs/VirtualMachineDetail.md +1 -1
- package/docs/VmInspectionConcern.md +39 -0
- package/docs/VmInspectionResults.md +35 -0
- package/docs/VmUtilizationDetails.md +62 -0
- package/package.json +1 -1
- package/src/apis/DefaultApi.ts +1548 -350
- package/src/models/BenchmarkRun.ts +171 -0
- package/src/models/DatastoreDetail.ts +146 -0
- package/src/models/DatastorePair.ts +92 -0
- package/src/models/EstimateRange.ts +81 -0
- package/src/models/ForecastStats.ts +147 -0
- package/src/models/ForecasterDatastoresRequest.ts +73 -0
- package/src/models/ForecasterPairStatus.ts +158 -0
- package/src/models/ForecasterStartRequest.ts +113 -0
- package/src/models/ForecasterStatus.ts +93 -0
- package/src/models/InspectorStatus.ts +37 -7
- package/src/models/PairCapability.ts +106 -0
- package/src/models/PairCapabilityRequest.ts +89 -0
- package/src/models/PutForecasterCredentials403Response.ts +73 -0
- package/src/models/RightsizingClusterListResponse.ts +83 -0
- package/src/models/RightsizingClusterUtilization.ts +185 -0
- package/src/models/RightsizingCollectRequest.ts +123 -0
- package/src/models/RightsizingMetricStats.ts +111 -0
- package/src/models/RightsizingReport.ts +146 -0
- package/src/models/RightsizingReportListResponse.ts +83 -0
- package/src/models/RightsizingReportSummary.ts +129 -0
- package/src/models/RightsizingVMReport.ts +101 -0
- package/src/models/StartInspectionRequest.ts +66 -0
- package/src/models/StopForecasterPair202Response.ts +83 -0
- package/src/models/VMs.ts +18 -0
- package/src/models/VirtualMachine.ts +43 -4
- package/src/models/VirtualMachineDetail.ts +11 -11
- package/src/models/VmInspectionConcern.ts +84 -0
- package/src/models/VmInspectionResults.ts +73 -0
- package/src/models/VmInspectionStatus.ts +1 -2
- package/src/models/VmUtilizationDetails.ts +192 -0
- package/src/models/index.ts +25 -1
- package/src/runtime.ts +1 -2
- package/dist/esm/models/InspectorStartRequest.d.ts +0 -39
- package/dist/esm/models/InspectorStartRequest.js +0 -48
- package/dist/models/InspectorStartRequest.d.ts +0 -39
- package/dist/models/InspectorStartRequest.js +0 -55
- 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
|
+
|