@openshift-migration-advisor/agent-sdk 0.16.0 → 0.17.0

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 (50) hide show
  1. package/.openapi-generator/FILES +4 -0
  2. package/README.md +5 -2
  3. package/dist/apis/DefaultApi.d.ts +38 -0
  4. package/dist/apis/DefaultApi.js +40 -0
  5. package/dist/esm/apis/DefaultApi.d.ts +38 -0
  6. package/dist/esm/apis/DefaultApi.js +40 -0
  7. package/dist/esm/models/CollectorStartRequest.d.ts +12 -12
  8. package/dist/esm/models/CollectorStartRequest.js +5 -11
  9. package/dist/esm/models/Datastore.js +1 -1
  10. package/dist/esm/models/ExportInventory400Response.d.ts +32 -0
  11. package/dist/esm/models/ExportInventory400Response.js +41 -0
  12. package/dist/esm/models/ExportInventory500Response.d.ts +32 -0
  13. package/dist/esm/models/ExportInventory500Response.js +41 -0
  14. package/dist/esm/models/Host.js +3 -3
  15. package/dist/esm/models/OsInfo.d.ts +16 -0
  16. package/dist/esm/models/OsInfo.js +11 -0
  17. package/dist/esm/models/index.d.ts +2 -0
  18. package/dist/esm/models/index.js +2 -0
  19. package/dist/esm/runtime.d.ts +1 -0
  20. package/dist/esm/runtime.js +4 -0
  21. package/dist/models/CollectorStartRequest.d.ts +12 -12
  22. package/dist/models/CollectorStartRequest.js +5 -11
  23. package/dist/models/Datastore.js +1 -1
  24. package/dist/models/ExportInventory400Response.d.ts +32 -0
  25. package/dist/models/ExportInventory400Response.js +48 -0
  26. package/dist/models/ExportInventory500Response.d.ts +32 -0
  27. package/dist/models/ExportInventory500Response.js +48 -0
  28. package/dist/models/Host.js +3 -3
  29. package/dist/models/OsInfo.d.ts +16 -0
  30. package/dist/models/OsInfo.js +12 -0
  31. package/dist/models/index.d.ts +2 -0
  32. package/dist/models/index.js +2 -0
  33. package/dist/runtime.d.ts +1 -0
  34. package/dist/runtime.js +5 -0
  35. package/docs/CollectorStartRequest.md +3 -2
  36. package/docs/DefaultApi.md +70 -0
  37. package/docs/ExportInventory400Response.md +34 -0
  38. package/docs/ExportInventory500Response.md +34 -0
  39. package/docs/OsInfo.md +2 -0
  40. package/package.json +1 -1
  41. package/src/apis/DefaultApi.ts +81 -0
  42. package/src/models/CollectorStartRequest.ts +17 -20
  43. package/src/models/Datastore.ts +1 -1
  44. package/src/models/ExportInventory400Response.ts +65 -0
  45. package/src/models/ExportInventory500Response.ts +65 -0
  46. package/src/models/Host.ts +3 -3
  47. package/src/models/OsInfo.ts +21 -0
  48. package/src/models/index.ts +2 -0
  49. package/src/runtime.ts +5 -0
  50. package/tsconfig.json +1 -1
@@ -68,6 +68,16 @@ import {
68
68
  DeleteLabelGloballyResponseFromJSON,
69
69
  DeleteLabelGloballyResponseToJSON,
70
70
  } from '../models/DeleteLabelGloballyResponse.js';
71
+ import {
72
+ type ExportInventory400Response,
73
+ ExportInventory400ResponseFromJSON,
74
+ ExportInventory400ResponseToJSON,
75
+ } from '../models/ExportInventory400Response.js';
76
+ import {
77
+ type ExportInventory500Response,
78
+ ExportInventory500ResponseFromJSON,
79
+ ExportInventory500ResponseToJSON,
80
+ } from '../models/ExportInventory500Response.js';
71
81
  import {
72
82
  type ForecastStats,
73
83
  ForecastStatsFromJSON,
@@ -245,6 +255,10 @@ export interface DeleteLabelGloballyRequest {
245
255
  label: string;
246
256
  }
247
257
 
258
+ export interface ExportInventoryRequest {
259
+ scope?: string;
260
+ }
261
+
248
262
  export interface GetClusterUtilizationRequest {
249
263
  clusterId: string;
250
264
  }
@@ -505,6 +519,30 @@ export interface DefaultApiInterface {
505
519
  */
506
520
  deleteLabelGlobally(requestParameters: DeleteLabelGloballyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<DeleteLabelGloballyResponse>;
507
521
 
522
+ /**
523
+ * Creates request options for exportInventory without sending the request
524
+ * @param {string} [scope] Comma-separated list of scopes to export (default: overview). Available scopes: overview, hosts, clusters, datastores, vms, network, utilization, storage-forecast, applications, groups, inspection
525
+ * @throws {RequiredError}
526
+ * @memberof DefaultApiInterface
527
+ */
528
+ exportInventoryRequestOpts(requestParameters: ExportInventoryRequest): Promise<runtime.RequestOpts>;
529
+
530
+ /**
531
+ * Exports selected data scopes as CSV files packaged in a ZIP archive. Supports flexible scope selection for offline analysis in Excel or custom tools.
532
+ * @summary Export VM inventory and migration planning data
533
+ * @param {string} [scope] Comma-separated list of scopes to export (default: overview). Available scopes: overview, hosts, clusters, datastores, vms, network, utilization, storage-forecast, applications, groups, inspection
534
+ * @param {*} [options] Override http request option.
535
+ * @throws {RequiredError}
536
+ * @memberof DefaultApiInterface
537
+ */
538
+ exportInventoryRaw(requestParameters: ExportInventoryRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>>;
539
+
540
+ /**
541
+ * Exports selected data scopes as CSV files packaged in a ZIP archive. Supports flexible scope selection for offline analysis in Excel or custom tools.
542
+ * Export VM inventory and migration planning data
543
+ */
544
+ exportInventory(requestParameters: ExportInventoryRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob>;
545
+
508
546
  /**
509
547
  * Creates request options for getAgentStatus without sending the request
510
548
  * @throws {RequiredError}
@@ -1785,6 +1823,49 @@ export class DefaultApi extends runtime.BaseAPI implements DefaultApiInterface {
1785
1823
  return await response.value();
1786
1824
  }
1787
1825
 
1826
+ /**
1827
+ * Creates request options for exportInventory without sending the request
1828
+ */
1829
+ async exportInventoryRequestOpts(requestParameters: ExportInventoryRequest): Promise<runtime.RequestOpts> {
1830
+ const queryParameters: any = {};
1831
+
1832
+ if (requestParameters['scope'] != null) {
1833
+ queryParameters['scope'] = requestParameters['scope'];
1834
+ }
1835
+
1836
+ const headerParameters: runtime.HTTPHeaders = {};
1837
+
1838
+
1839
+ let urlPath = `/export`;
1840
+
1841
+ return {
1842
+ path: urlPath,
1843
+ method: 'GET',
1844
+ headers: headerParameters,
1845
+ query: queryParameters,
1846
+ };
1847
+ }
1848
+
1849
+ /**
1850
+ * Exports selected data scopes as CSV files packaged in a ZIP archive. Supports flexible scope selection for offline analysis in Excel or custom tools.
1851
+ * Export VM inventory and migration planning data
1852
+ */
1853
+ async exportInventoryRaw(requestParameters: ExportInventoryRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
1854
+ const requestOptions = await this.exportInventoryRequestOpts(requestParameters);
1855
+ const response = await this.request(requestOptions, initOverrides);
1856
+
1857
+ return new runtime.BlobApiResponse(response);
1858
+ }
1859
+
1860
+ /**
1861
+ * Exports selected data scopes as CSV files packaged in a ZIP archive. Supports flexible scope selection for offline analysis in Excel or custom tools.
1862
+ * Export VM inventory and migration planning data
1863
+ */
1864
+ async exportInventory(requestParameters: ExportInventoryRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
1865
+ const response = await this.exportInventoryRaw(requestParameters, initOverrides);
1866
+ return await response.value();
1867
+ }
1868
+
1788
1869
  /**
1789
1870
  * Creates request options for getAgentStatus without sending the request
1790
1871
  */
@@ -14,7 +14,7 @@
14
14
 
15
15
  import { mapValues } from '../runtime.js';
16
16
  /**
17
- *
17
+ * Start collection. Credentials are optional if previously stored via PUT /credentials.
18
18
  * @export
19
19
  * @interface CollectorStartRequest
20
20
  */
@@ -24,40 +24,37 @@ export interface CollectorStartRequest {
24
24
  * @type {string}
25
25
  * @memberof CollectorStartRequest
26
26
  */
27
- url: string;
27
+ url?: string;
28
28
  /**
29
- *
29
+ * vCenter username
30
30
  * @type {string}
31
31
  * @memberof CollectorStartRequest
32
32
  */
33
- username: string;
33
+ username?: string;
34
34
  /**
35
- *
35
+ * vCenter password
36
36
  * @type {string}
37
37
  * @memberof CollectorStartRequest
38
38
  */
39
- password: string;
39
+ password?: string;
40
40
  /**
41
- * PEM-encoded CA certificate bundle for verifying the vCenter TLS certificate. Mutually exclusive with skipTls.
42
- * @type {string}
41
+ * Skip TLS certificate verification
42
+ * @type {boolean}
43
43
  * @memberof CollectorStartRequest
44
44
  */
45
- cacert?: string;
45
+ skipTls?: boolean;
46
46
  /**
47
- * When true, TLS certificate verification is skipped. Must not be set to true alongside cacert — that combination returns 400. When omitted: if cacert is absent the connection skips TLS verification (backwards compatibility); if cacert is provided the connection verifies TLS using that certificate — skipTls need not be sent.
48
- * @type {boolean}
47
+ * PEM-encoded CA certificate bundle
48
+ * @type {string}
49
49
  * @memberof CollectorStartRequest
50
50
  */
51
- skipTls?: boolean;
51
+ cacert?: string;
52
52
  }
53
53
 
54
54
  /**
55
55
  * Check if a given object implements the CollectorStartRequest interface.
56
56
  */
57
57
  export function instanceOfCollectorStartRequest(value: object): value is CollectorStartRequest {
58
- if (!('url' in value) || value['url'] === undefined) return false;
59
- if (!('username' in value) || value['username'] === undefined) return false;
60
- if (!('password' in value) || value['password'] === undefined) return false;
61
58
  return true;
62
59
  }
63
60
 
@@ -71,11 +68,11 @@ export function CollectorStartRequestFromJSONTyped(json: any, ignoreDiscriminato
71
68
  }
72
69
  return {
73
70
 
74
- 'url': json['url'],
75
- 'username': json['username'],
76
- 'password': json['password'],
77
- 'cacert': json['cacert'] == null ? undefined : json['cacert'],
71
+ 'url': json['url'] == null ? undefined : json['url'],
72
+ 'username': json['username'] == null ? undefined : json['username'],
73
+ 'password': json['password'] == null ? undefined : json['password'],
78
74
  'skipTls': json['skipTls'] == null ? undefined : json['skipTls'],
75
+ 'cacert': json['cacert'] == null ? undefined : json['cacert'],
79
76
  };
80
77
  }
81
78
 
@@ -93,8 +90,8 @@ export function CollectorStartRequestToJSONTyped(value?: CollectorStartRequest |
93
90
  'url': value['url'],
94
91
  'username': value['username'],
95
92
  'password': value['password'],
96
- 'cacert': value['cacert'],
97
93
  'skipTls': value['skipTls'],
94
+ 'cacert': value['cacert'],
98
95
  };
99
96
  }
100
97
 
@@ -108,7 +108,7 @@ export function DatastoreFromJSONTyped(json: any, ignoreDiscriminator: boolean):
108
108
  'hardwareAcceleratedMove': json['hardwareAcceleratedMove'],
109
109
  'protocolType': json['protocolType'],
110
110
  'model': json['model'],
111
- 'hostId': json['hostId'] == null ? undefined : json['hostId'],
111
+ 'hostId': json['hostId'] === undefined ? undefined : json['hostId'] === null ? null : json['hostId'],
112
112
  };
113
113
  }
114
114
 
@@ -0,0 +1,65 @@
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 ExportInventory400Response
20
+ */
21
+ export interface ExportInventory400Response {
22
+ /**
23
+ *
24
+ * @type {string}
25
+ * @memberof ExportInventory400Response
26
+ */
27
+ error?: string;
28
+ }
29
+
30
+ /**
31
+ * Check if a given object implements the ExportInventory400Response interface.
32
+ */
33
+ export function instanceOfExportInventory400Response(value: object): value is ExportInventory400Response {
34
+ return true;
35
+ }
36
+
37
+ export function ExportInventory400ResponseFromJSON(json: any): ExportInventory400Response {
38
+ return ExportInventory400ResponseFromJSONTyped(json, false);
39
+ }
40
+
41
+ export function ExportInventory400ResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): ExportInventory400Response {
42
+ if (json == null) {
43
+ return json;
44
+ }
45
+ return {
46
+
47
+ 'error': json['error'] == null ? undefined : json['error'],
48
+ };
49
+ }
50
+
51
+ export function ExportInventory400ResponseToJSON(json: any): ExportInventory400Response {
52
+ return ExportInventory400ResponseToJSONTyped(json, false);
53
+ }
54
+
55
+ export function ExportInventory400ResponseToJSONTyped(value?: ExportInventory400Response | null, ignoreDiscriminator: boolean = false): any {
56
+ if (value == null) {
57
+ return value;
58
+ }
59
+
60
+ return {
61
+
62
+ 'error': value['error'],
63
+ };
64
+ }
65
+
@@ -0,0 +1,65 @@
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 ExportInventory500Response
20
+ */
21
+ export interface ExportInventory500Response {
22
+ /**
23
+ *
24
+ * @type {string}
25
+ * @memberof ExportInventory500Response
26
+ */
27
+ error?: string;
28
+ }
29
+
30
+ /**
31
+ * Check if a given object implements the ExportInventory500Response interface.
32
+ */
33
+ export function instanceOfExportInventory500Response(value: object): value is ExportInventory500Response {
34
+ return true;
35
+ }
36
+
37
+ export function ExportInventory500ResponseFromJSON(json: any): ExportInventory500Response {
38
+ return ExportInventory500ResponseFromJSONTyped(json, false);
39
+ }
40
+
41
+ export function ExportInventory500ResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): ExportInventory500Response {
42
+ if (json == null) {
43
+ return json;
44
+ }
45
+ return {
46
+
47
+ 'error': json['error'] == null ? undefined : json['error'],
48
+ };
49
+ }
50
+
51
+ export function ExportInventory500ResponseToJSON(json: any): ExportInventory500Response {
52
+ return ExportInventory500ResponseToJSONTyped(json, false);
53
+ }
54
+
55
+ export function ExportInventory500ResponseToJSONTyped(value?: ExportInventory500Response | null, ignoreDiscriminator: boolean = false): any {
56
+ if (value == null) {
57
+ return value;
58
+ }
59
+
60
+ return {
61
+
62
+ 'error': value['error'],
63
+ };
64
+ }
65
+
@@ -79,9 +79,9 @@ export function HostFromJSONTyped(json: any, ignoreDiscriminator: boolean): Host
79
79
  'id': json['id'] == null ? undefined : json['id'],
80
80
  'vendor': json['vendor'],
81
81
  'model': json['model'],
82
- 'cpuCores': json['cpuCores'] == null ? undefined : json['cpuCores'],
83
- 'cpuSockets': json['cpuSockets'] == null ? undefined : json['cpuSockets'],
84
- 'memoryMB': json['memoryMB'] == null ? undefined : json['memoryMB'],
82
+ 'cpuCores': json['cpuCores'] === undefined ? undefined : json['cpuCores'] === null ? null : json['cpuCores'],
83
+ 'cpuSockets': json['cpuSockets'] === undefined ? undefined : json['cpuSockets'] === null ? null : json['cpuSockets'],
84
+ 'memoryMB': json['memoryMB'] === undefined ? undefined : json['memoryMB'] === null ? null : json['memoryMB'],
85
85
  };
86
86
  }
87
87
 
@@ -31,6 +31,12 @@ export interface OsInfo {
31
31
  * @memberof OsInfo
32
32
  */
33
33
  supported: boolean;
34
+ /**
35
+ * OS support tier per Red Hat KCS article 4234591
36
+ * @type {OsInfoSupportTierEnum}
37
+ * @memberof OsInfo
38
+ */
39
+ supportTier?: OsInfoSupportTierEnum;
34
40
  /**
35
41
  * Recommended OS upgrade for MTV unsupported OS that can be upgraded to a supported OS
36
42
  * @type {string}
@@ -39,6 +45,19 @@ export interface OsInfo {
39
45
  upgradeRecommendation?: string;
40
46
  }
41
47
 
48
+
49
+ /**
50
+ * @export
51
+ */
52
+ export const OsInfoSupportTierEnum = {
53
+ Certified: 'certified',
54
+ VendorSupported: 'vendor_supported',
55
+ CommunitySupported: 'community_supported',
56
+ SpecialHandling: 'special_handling'
57
+ } as const;
58
+ export type OsInfoSupportTierEnum = typeof OsInfoSupportTierEnum[keyof typeof OsInfoSupportTierEnum];
59
+
60
+
42
61
  /**
43
62
  * Check if a given object implements the OsInfo interface.
44
63
  */
@@ -60,6 +79,7 @@ export function OsInfoFromJSONTyped(json: any, ignoreDiscriminator: boolean): Os
60
79
 
61
80
  'count': json['count'],
62
81
  'supported': json['supported'],
82
+ 'supportTier': json['supportTier'] == null ? undefined : json['supportTier'],
63
83
  'upgradeRecommendation': json['upgradeRecommendation'] == null ? undefined : json['upgradeRecommendation'],
64
84
  };
65
85
  }
@@ -77,6 +97,7 @@ export function OsInfoToJSONTyped(value?: OsInfo | null, ignoreDiscriminator: bo
77
97
 
78
98
  'count': value['count'],
79
99
  'supported': value['supported'],
100
+ 'supportTier': value['supportTier'],
80
101
  'upgradeRecommendation': value['upgradeRecommendation'],
81
102
  };
82
103
  }
@@ -21,6 +21,8 @@ export * from './DeleteLabelGloballyResponse.js';
21
21
  export * from './DiskSizeTierSummary.js';
22
22
  export * from './DiskTypeSummary.js';
23
23
  export * from './EstimateRange.js';
24
+ export * from './ExportInventory400Response.js';
25
+ export * from './ExportInventory500Response.js';
24
26
  export * from './ForecastStats.js';
25
27
  export * from './ForecasterDatastoresRequest.js';
26
28
  export * from './ForecasterPairStatus.js';
package/src/runtime.ts CHANGED
@@ -367,6 +367,11 @@ export function mapValues(data: any, fn: (item: any) => any) {
367
367
  return result;
368
368
  }
369
369
 
370
+ // Pass-through serializer for `any`-typed properties in form data. See #1877.
371
+ export function anyToJSON(value: any): any {
372
+ return value;
373
+ }
374
+
370
375
  export function canConsumeForm(consumes: Consume[]): boolean {
371
376
  for (const consume of consumes) {
372
377
  if (consume.contentType?.startsWith('multipart/form-data') == true) {
package/tsconfig.json CHANGED
@@ -3,8 +3,8 @@
3
3
  "declaration": true,
4
4
  "target": "es6",
5
5
  "module": "commonjs",
6
- "moduleResolution": "node",
7
6
  "outDir": "dist",
7
+ "rootDir": "src",
8
8
  "typeRoots": [
9
9
  "node_modules/@types"
10
10
  ]