@xen-orchestra/rest-api 0.22.1 → 0.23.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.
@@ -7,8 +7,10 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  var __param = (this && this.__param) || function (paramIndex, decorator) {
8
8
  return function (target, key) { decorator(target, key, paramIndex); }
9
9
  };
10
- import { Delete, Example, Get, Path, Put, Query, Request, Response, Route, Security, SuccessResponse, Tags } from 'tsoa';
10
+ import { Body, Delete, Example, Get, Middlewares, Path, Post, Put, Query, Request, Response, Route, Security, SuccessResponse, Tags, } from 'tsoa';
11
+ import { json } from 'express';
11
12
  import { inject } from 'inversify';
13
+ import { invalidParameters } from 'xo-common/api-errors.js';
12
14
  import { pipeline } from 'node:stream/promises';
13
15
  import { provide } from 'inversify-binding-decorators';
14
16
  import { AlarmService } from '../alarms/alarm.service.mjs';
@@ -17,10 +19,10 @@ import { genericAlarmsExample } from '../open-api/oa-examples/alarm.oa-example.m
17
19
  import { host, hostIds, hostSmt, hostMissingPatches, hostStats, partialHosts, } from '../open-api/oa-examples/host.oa-example.mjs';
18
20
  import { RestApi } from '../rest-api/rest-api.mjs';
19
21
  import { XapiXoController } from '../abstract-classes/xapi-xo-controller.mjs';
20
- import { badRequestResp, featureUnauthorized, internalServerErrorResp, noContentResp, notFoundResp, unauthorizedResp, } from '../open-api/common/response.common.mjs';
22
+ import { asynchronousActionResp, badRequestResp, featureUnauthorized, internalServerErrorResp, invalidParameters as invalidParametersResp, noContentResp, notFoundResp, unauthorizedResp, } from '../open-api/common/response.common.mjs';
21
23
  import { HostService } from './host.service.mjs';
22
24
  import { messageIds, partialMessages } from '../open-api/oa-examples/message.oa-example.mjs';
23
- import { partialTasks, taskIds } from '../open-api/oa-examples/task.oa-example.mjs';
25
+ import { partialTasks, taskIds, taskLocation } from '../open-api/oa-examples/task.oa-example.mjs';
24
26
  let HostController = class HostController extends XapiXoController {
25
27
  #alarmService;
26
28
  #hostService;
@@ -155,6 +157,35 @@ let HostController = class HostController extends XapiXoController {
155
157
  const host = this.getXapiObject(id);
156
158
  await host.$call('remove_tags', tag);
157
159
  }
160
+ /**
161
+ * Reconfigure the management interface of the host to use the given PIF.
162
+ *
163
+ * The target PIF must already have an IP address configured.
164
+ *
165
+ * @example id "b61a5c92-700e-4966-a13b-00633f03eea8"
166
+ * @example body { "pif": "d9e42451-3794-089f-de81-4ee0e6137bee" }
167
+ */
168
+ managementReconfigure(id, body, sync) {
169
+ const hostId = id;
170
+ const action = async () => {
171
+ const host = this.getObject(hostId);
172
+ const pif = this.restApi.getObject(body.pif, 'PIF');
173
+ if (pif.$host !== host.id) {
174
+ throw invalidParameters(`the PIF ${pif.uuid} does not belong to host ${host.uuid}`);
175
+ }
176
+ const xapiHost = this.getXapiObject(hostId);
177
+ await xapiHost.$xapi.callAsync('host.management_reconfigure', pif._xapiRef);
178
+ };
179
+ return this.createAction(action, {
180
+ sync,
181
+ statusCode: noContentResp.status,
182
+ taskProperties: {
183
+ name: 'reconfigure host management interface',
184
+ objectId: hostId,
185
+ args: body,
186
+ },
187
+ });
188
+ }
158
189
  };
159
190
  __decorate([
160
191
  Example(hostIds),
@@ -263,6 +294,20 @@ __decorate([
263
294
  __param(0, Path()),
264
295
  __param(1, Path())
265
296
  ], HostController.prototype, "deleteHostTag", null);
297
+ __decorate([
298
+ Example(taskLocation),
299
+ Post('{id}/actions/management_reconfigure'),
300
+ Middlewares(json()),
301
+ SuccessResponse(asynchronousActionResp.status, asynchronousActionResp.description),
302
+ Response(noContentResp.status, noContentResp.description),
303
+ Response(notFoundResp.status, notFoundResp.description),
304
+ Response(badRequestResp.status, badRequestResp.description),
305
+ Response(invalidParametersResp.status, invalidParametersResp.description),
306
+ Response(internalServerErrorResp.status, internalServerErrorResp.description),
307
+ __param(0, Path()),
308
+ __param(1, Body()),
309
+ __param(2, Query())
310
+ ], HostController.prototype, "managementReconfigure", null);
266
311
  HostController = __decorate([
267
312
  Route('hosts'),
268
313
  Security('*'),
@@ -1,3 +1,6 @@
1
+ export const vbdId = {
2
+ id: '5f9a4c0b-3548-6171-4396-699a0e56cc60',
3
+ };
1
4
  export const vbdIds = [
2
5
  '/rest/v0/vbds/5f9a4c0b-3548-6171-4396-699a0e56cc60',
3
6
  '/rest/v0/vbds/60c7c9b6-35ba-1791-67b5-6aaf90eea11d',
@@ -2,60 +2,50 @@ export const xoaDashboard = {
2
2
  nPools: 2,
3
3
  nHosts: 5,
4
4
  backupRepositories: {
5
- s3: {
6
- size: {
7
- backups: 286295393792,
8
- },
9
- },
10
- other: {
11
- size: {
12
- available: 62630354944,
13
- backups: 20684251648,
14
- other: 66875031040,
15
- total: 150189637632,
16
- used: 87559282688,
17
- },
18
- },
5
+ isEmpty: true,
19
6
  },
20
7
  resourcesOverview: {
21
8
  nCpus: 52,
22
- memorySize: 107374182400,
23
- srSize: 751123595264,
9
+ memorySize: 111669149696,
10
+ srSize: 1132693933056,
24
11
  },
25
12
  poolsStatus: {
26
13
  connected: 2,
27
- unreachable: 7,
14
+ disconnected: 1,
15
+ unreachable: 0,
28
16
  unknown: 0,
17
+ total: 3,
29
18
  },
30
- nHostsEol: 0,
31
19
  missingPatches: {
32
- hasAuthorization: true,
33
- nHostsFailed: 1,
34
- nHostsWithMissingPatches: 4,
35
- nPoolsWithMissingPatches: 2,
20
+ hasAuthorization: false,
36
21
  },
37
22
  storageRepositories: {
38
23
  size: {
39
- available: 628454834176,
40
- other: 122641256960,
41
- replicated: 27504128,
42
- total: 751123595264,
43
- used: 122668761088,
24
+ available: 622560659456,
25
+ other: 494094312448,
26
+ replicated: 16038961152,
27
+ total: 1132693933056,
28
+ used: 510133273600,
44
29
  },
45
30
  },
46
31
  backups: {
47
- jobs: {
48
- disabled: 8,
49
- failed: 0,
50
- skipped: 0,
51
- successful: 0,
52
- total: 8,
53
- },
54
- issues: [],
55
- vmsProtection: {
56
- protected: 0,
57
- unprotected: 0,
58
- notInJob: 20,
59
- },
32
+ isEmpty: true,
33
+ },
34
+ hostsStatus: {
35
+ disabled: 0,
36
+ running: 4,
37
+ halted: 1,
38
+ unknown: 0,
39
+ total: 5,
40
+ },
41
+ vmsStatus: {
42
+ active: 11,
43
+ inactive: 39,
44
+ running: 11,
45
+ halted: 39,
46
+ paused: 0,
47
+ suspended: 0,
48
+ unknown: 0,
49
+ total: 50,
60
50
  },
61
51
  };
@@ -73,6 +73,21 @@ import { iocContainer } from './../../ioc/ioc.mjs';
73
73
  const expressAuthenticationRecasted = expressAuthentication;
74
74
  // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
75
75
  const models = {
76
+ "IsEmptyData": {
77
+ "dataType": "refAlias",
78
+ "type": { "dataType": "nestedObjectLiteral", "nestedProperties": { "isEmpty": { "dataType": "enum", "enums": [true], "required": true } }, "validators": {} },
79
+ },
80
+ // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
81
+ "MissingPatchesInfo": {
82
+ "dataType": "refAlias",
83
+ "type": { "dataType": "nestedObjectLiteral", "nestedProperties": { "nPoolsWithMissingPatches": { "dataType": "double", "required": true }, "nPools": { "dataType": "double", "required": true }, "nHostsFailed": { "dataType": "double", "required": true }, "nHostsWithMissingPatches": { "dataType": "double", "required": true }, "nHostsEol": { "dataType": "union", "subSchemas": [{ "dataType": "double" }, { "ref": "IsEmptyData" }], "required": true }, "nHosts": { "dataType": "double", "required": true }, "hasAuthorization": { "dataType": "enum", "enums": [true], "required": true } }, "validators": {} },
84
+ },
85
+ // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
86
+ "HasNoAuthorization": {
87
+ "dataType": "refAlias",
88
+ "type": { "dataType": "nestedObjectLiteral", "nestedProperties": { "hasAuthorization": { "dataType": "enum", "enums": [false], "required": true } }, "validators": {} },
89
+ },
90
+ // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
76
91
  "PromiseWriteInStreamError": {
77
92
  "dataType": "refAlias",
78
93
  "type": { "dataType": "nestedObjectLiteral", "nestedProperties": { "error": { "dataType": "enum", "enums": [true], "required": true } }, "validators": {} },
@@ -83,6 +98,21 @@ const models = {
83
98
  "type": { "dataType": "nestedObjectLiteral", "nestedProperties": { "other": { "dataType": "nestedObjectLiteral", "nestedProperties": { "size": { "dataType": "nestedObjectLiteral", "nestedProperties": { "used": { "dataType": "double" }, "total": { "dataType": "double" }, "other": { "dataType": "double" }, "backups": { "dataType": "double", "required": true }, "available": { "dataType": "double" } }, "required": true } } }, "s3": { "dataType": "nestedObjectLiteral", "nestedProperties": { "size": { "dataType": "nestedObjectLiteral", "nestedProperties": { "backups": { "dataType": "double", "required": true } }, "required": true } } } }, "validators": {} },
84
99
  },
85
100
  // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
101
+ "IsMaybeExpired_DashboardBackupRepositoriesSizeInfo_": {
102
+ "dataType": "refAlias",
103
+ "type": { "dataType": "intersection", "subSchemas": [{ "ref": "DashboardBackupRepositoriesSizeInfo" }, { "dataType": "nestedObjectLiteral", "nestedProperties": { "isExpired": { "dataType": "enum", "enums": [true] } } }], "validators": {} },
104
+ },
105
+ // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
106
+ "IsMaybeExpired_IsEmptyData_": {
107
+ "dataType": "refAlias",
108
+ "type": { "dataType": "intersection", "subSchemas": [{ "ref": "IsEmptyData" }, { "dataType": "nestedObjectLiteral", "nestedProperties": { "isExpired": { "dataType": "enum", "enums": [true] } } }], "validators": {} },
109
+ },
110
+ // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
111
+ "SrSizeInfo": {
112
+ "dataType": "refAlias",
113
+ "type": { "dataType": "nestedObjectLiteral", "nestedProperties": { "size": { "dataType": "nestedObjectLiteral", "nestedProperties": { "used": { "dataType": "double", "required": true }, "total": { "dataType": "double", "required": true }, "replicated": { "dataType": "double", "required": true }, "other": { "dataType": "double", "required": true }, "available": { "dataType": "double", "required": true } }, "required": true } }, "validators": {} },
114
+ },
115
+ // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
86
116
  "BACKUP_TYPE": {
87
117
  "dataType": "refAlias",
88
118
  "type": { "dataType": "union", "subSchemas": [{ "dataType": "enum", "enums": ["backup"] }, { "dataType": "enum", "enums": ["metadataBackup"] }, { "dataType": "enum", "enums": ["mirrorBackup"] }], "validators": {} },
@@ -90,12 +120,17 @@ const models = {
90
120
  // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
91
121
  "DashboardBackupsInfo": {
92
122
  "dataType": "refAlias",
93
- "type": { "dataType": "nestedObjectLiteral", "nestedProperties": { "vmsProtection": { "dataType": "nestedObjectLiteral", "nestedProperties": { "notInJob": { "dataType": "double", "required": true }, "unprotected": { "dataType": "double", "required": true }, "protected": { "dataType": "double", "required": true } }, "required": true }, "issues": { "dataType": "array", "array": { "dataType": "nestedObjectLiteral", "nestedProperties": { "uuid": { "dataType": "string", "required": true }, "type": { "ref": "BACKUP_TYPE", "required": true }, "name": { "dataType": "string" }, "logs": { "dataType": "array", "array": { "dataType": "union", "subSchemas": [{ "dataType": "enum", "enums": ["failure"] }, { "dataType": "enum", "enums": ["interrupted"] }, { "dataType": "enum", "enums": ["skipped"] }, { "dataType": "enum", "enums": ["success"] }] }, "required": true } } }, "required": true }, "jobs": { "dataType": "nestedObjectLiteral", "nestedProperties": { "total": { "dataType": "double", "required": true }, "successful": { "dataType": "double", "required": true }, "skipped": { "dataType": "double", "required": true }, "failed": { "dataType": "double", "required": true }, "disabled": { "dataType": "double", "required": true } }, "required": true } }, "validators": {} },
123
+ "type": { "dataType": "nestedObjectLiteral", "nestedProperties": { "vmsProtection": { "dataType": "nestedObjectLiteral", "nestedProperties": { "notInJob": { "dataType": "double", "required": true }, "unprotected": { "dataType": "double", "required": true }, "protected": { "dataType": "double", "required": true } }, "required": true }, "issues": { "dataType": "array", "array": { "dataType": "nestedObjectLiteral", "nestedProperties": { "uuid": { "dataType": "string", "required": true }, "type": { "ref": "BACKUP_TYPE", "required": true }, "name": { "dataType": "string" }, "logs": { "dataType": "array", "array": { "dataType": "union", "subSchemas": [{ "dataType": "enum", "enums": ["failure"] }, { "dataType": "enum", "enums": ["interrupted"] }, { "dataType": "enum", "enums": ["skipped"] }, { "dataType": "enum", "enums": ["success"] }] }, "required": true } } }, "required": true }, "jobs": { "dataType": "nestedObjectLiteral", "nestedProperties": { "total": { "dataType": "double", "required": true }, "successful": { "dataType": "double", "required": true }, "skipped": { "dataType": "double", "required": true }, "noRecentRun": { "dataType": "double", "required": true }, "failed": { "dataType": "double", "required": true }, "disabled": { "dataType": "double", "required": true } }, "required": true } }, "validators": {} },
124
+ },
125
+ // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
126
+ "IsMaybeExpired_DashboardBackupsInfo_": {
127
+ "dataType": "refAlias",
128
+ "type": { "dataType": "intersection", "subSchemas": [{ "ref": "DashboardBackupsInfo" }, { "dataType": "nestedObjectLiteral", "nestedProperties": { "isExpired": { "dataType": "enum", "enums": [true] } } }], "validators": {} },
94
129
  },
95
130
  // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
96
131
  "XoaDashboard": {
97
132
  "dataType": "refAlias",
98
- "type": { "dataType": "nestedObjectLiteral", "nestedProperties": { "poolsStatus": { "dataType": "nestedObjectLiteral", "nestedProperties": { "unknown": { "dataType": "double", "required": true }, "unreachable": { "dataType": "double", "required": true }, "connected": { "dataType": "double", "required": true } }, "required": true }, "resourcesOverview": { "dataType": "nestedObjectLiteral", "nestedProperties": { "srSize": { "dataType": "double", "required": true }, "memorySize": { "dataType": "double", "required": true }, "nCpus": { "dataType": "double", "required": true } }, "required": true }, "backups": { "dataType": "union", "subSchemas": [{ "ref": "DashboardBackupsInfo" }, { "ref": "PromiseWriteInStreamError" }] }, "storageRepositories": { "dataType": "union", "subSchemas": [{ "dataType": "nestedObjectLiteral", "nestedProperties": { "size": { "dataType": "nestedObjectLiteral", "nestedProperties": { "used": { "dataType": "double", "required": true }, "total": { "dataType": "double", "required": true }, "replicated": { "dataType": "double", "required": true }, "other": { "dataType": "double", "required": true }, "available": { "dataType": "double", "required": true } }, "required": true } } }, { "ref": "PromiseWriteInStreamError" }], "required": true }, "backupRepositories": { "dataType": "union", "subSchemas": [{ "ref": "DashboardBackupRepositoriesSizeInfo" }, { "ref": "PromiseWriteInStreamError" }] }, "missingPatches": { "dataType": "union", "subSchemas": [{ "dataType": "nestedObjectLiteral", "nestedProperties": { "hasAuthorization": { "dataType": "enum", "enums": [false], "required": true } } }, { "dataType": "nestedObjectLiteral", "nestedProperties": { "nHostsFailed": { "dataType": "double", "required": true }, "nPoolsWithMissingPatches": { "dataType": "double", "required": true }, "nHostsWithMissingPatches": { "dataType": "double", "required": true }, "hasAuthorization": { "dataType": "enum", "enums": [true], "required": true } } }], "required": true }, "vmsStatus": { "dataType": "nestedObjectLiteral", "nestedProperties": { "total": { "dataType": "double", "required": true }, "unknown": { "dataType": "double", "required": true }, "inactive": { "dataType": "double", "required": true }, "active": { "dataType": "double", "required": true } }, "required": true }, "hostsStatus": { "dataType": "nestedObjectLiteral", "nestedProperties": { "total": { "dataType": "double", "required": true }, "unknown": { "dataType": "double", "required": true }, "halted": { "dataType": "double", "required": true }, "running": { "dataType": "double", "required": true } }, "required": true }, "nHostsEol": { "dataType": "union", "subSchemas": [{ "dataType": "double" }, { "ref": "PromiseWriteInStreamError" }] }, "nHosts": { "dataType": "double", "required": true }, "nPools": { "dataType": "double", "required": true } }, "validators": {} },
133
+ "type": { "dataType": "nestedObjectLiteral", "nestedProperties": { "poolsStatus": { "dataType": "nestedObjectLiteral", "nestedProperties": { "total": { "dataType": "double", "required": true }, "unknown": { "dataType": "double", "required": true }, "unreachable": { "dataType": "double", "required": true }, "disconnected": { "dataType": "double", "required": true }, "connected": { "dataType": "double", "required": true } }, "required": true }, "resourcesOverview": { "dataType": "union", "subSchemas": [{ "dataType": "nestedObjectLiteral", "nestedProperties": { "srSize": { "dataType": "double", "required": true }, "memorySize": { "dataType": "double", "required": true }, "nCpus": { "dataType": "double", "required": true } } }, { "ref": "IsEmptyData" }], "required": true }, "backups": { "dataType": "union", "subSchemas": [{ "ref": "IsMaybeExpired_DashboardBackupsInfo_" }, { "ref": "IsMaybeExpired_IsEmptyData_" }, { "ref": "PromiseWriteInStreamError" }] }, "storageRepositories": { "dataType": "union", "subSchemas": [{ "ref": "SrSizeInfo" }, { "ref": "PromiseWriteInStreamError" }, { "ref": "IsEmptyData" }], "required": true }, "backupRepositories": { "dataType": "union", "subSchemas": [{ "ref": "IsMaybeExpired_DashboardBackupRepositoriesSizeInfo_" }, { "ref": "IsMaybeExpired_IsEmptyData_" }, { "ref": "PromiseWriteInStreamError" }] }, "missingPatches": { "dataType": "union", "subSchemas": [{ "ref": "MissingPatchesInfo" }, { "ref": "HasNoAuthorization" }, { "ref": "PromiseWriteInStreamError" }], "required": true }, "vmsStatus": { "dataType": "nestedObjectLiteral", "nestedProperties": { "total": { "dataType": "double", "required": true }, "unknown": { "dataType": "double", "required": true }, "suspended": { "dataType": "double", "required": true }, "running": { "dataType": "double", "required": true }, "paused": { "dataType": "double", "required": true }, "inactive": { "dataType": "double", "required": true }, "halted": { "dataType": "double", "required": true }, "active": { "dataType": "double", "required": true } }, "required": true }, "hostsStatus": { "dataType": "nestedObjectLiteral", "nestedProperties": { "total": { "dataType": "double", "required": true }, "unknown": { "dataType": "double", "required": true }, "halted": { "dataType": "double", "required": true }, "running": { "dataType": "double", "required": true }, "disabled": { "dataType": "double", "required": true } }, "required": true }, "nHosts": { "dataType": "double", "required": true }, "nPools": { "dataType": "double", "required": true } }, "validators": {} },
99
134
  },
100
135
  // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
101
136
  "PingResponse": {
@@ -340,7 +375,7 @@ const models = {
340
375
  // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
341
376
  "Unbrand_VmDashboard-at-backupsInfo_91_replication_93__": {
342
377
  "dataType": "refAlias",
343
- "type": { "dataType": "union", "subSchemas": [{ "dataType": "undefined" }, { "dataType": "nestedObjectLiteral", "nestedProperties": { "id": { "dataType": "string", "required": true }, "timestamp": { "dataType": "double", "required": true }, "sr": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] } } }], "validators": {} },
378
+ "type": { "dataType": "union", "subSchemas": [{ "dataType": "nestedObjectLiteral", "nestedProperties": {} }, { "dataType": "nestedObjectLiteral", "nestedProperties": { "id": { "dataType": "string", "required": true }, "timestamp": { "dataType": "double", "required": true }, "sr": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] } } }], "validators": {} },
344
379
  },
345
380
  // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
346
381
  "Unbrand_VmDashboardBackupArchive_": {
@@ -350,7 +385,7 @@ const models = {
350
385
  // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
351
386
  "UnbrandedVmDashboard": {
352
387
  "dataType": "refAlias",
353
- "type": { "dataType": "nestedObjectLiteral", "nestedProperties": { "backupsInfo": { "dataType": "nestedObjectLiteral", "nestedProperties": { "backupArchives": { "dataType": "array", "array": { "dataType": "refAlias", "ref": "Unbrand_VmDashboardBackupArchive_" }, "required": true }, "replication": { "ref": "Unbrand_VmDashboard-at-backupsInfo_91_replication_93__" }, "vmProtection": { "dataType": "union", "subSchemas": [{ "dataType": "enum", "enums": ["protected"] }, { "dataType": "enum", "enums": ["unprotected"] }, { "dataType": "enum", "enums": ["not-in-job"] }], "required": true }, "lastRuns": { "dataType": "array", "array": { "dataType": "refAlias", "ref": "Unbrand_VmDashboardRun_" }, "required": true } }, "required": true }, "alarms": { "dataType": "array", "array": { "dataType": "string" }, "required": true }, "quickInfo": { "dataType": "intersection", "subSchemas": [{ "ref": "Omit_Unbrand_VmDashboard-at-quickInfo_.creation_" }, { "dataType": "nestedObjectLiteral", "nestedProperties": { "creation": { "ref": "Unbrand_VmDashboard-at-quickInfo_91_creation_93__", "required": true } } }], "required": true } }, "validators": {} },
388
+ "type": { "dataType": "nestedObjectLiteral", "nestedProperties": { "backupsInfo": { "dataType": "nestedObjectLiteral", "nestedProperties": { "backupArchives": { "dataType": "array", "array": { "dataType": "refAlias", "ref": "Unbrand_VmDashboardBackupArchive_" }, "required": true }, "replication": { "ref": "Unbrand_VmDashboard-at-backupsInfo_91_replication_93__", "required": true }, "vmProtection": { "dataType": "union", "subSchemas": [{ "dataType": "enum", "enums": ["protected"] }, { "dataType": "enum", "enums": ["unprotected"] }, { "dataType": "enum", "enums": ["not-in-active-job"] }], "required": true }, "lastRuns": { "dataType": "array", "array": { "dataType": "refAlias", "ref": "Unbrand_VmDashboardRun_" }, "required": true } }, "required": true }, "alarms": { "dataType": "array", "array": { "dataType": "string" }, "required": true }, "quickInfo": { "dataType": "intersection", "subSchemas": [{ "ref": "Omit_Unbrand_VmDashboard-at-quickInfo_.creation_" }, { "dataType": "nestedObjectLiteral", "nestedProperties": { "creation": { "ref": "Unbrand_VmDashboard-at-quickInfo_91_creation_93__", "required": true } } }], "required": true } }, "validators": {} },
354
389
  },
355
390
  // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
356
391
  "Partial_Unbrand_XoVmTemplate__": {
@@ -428,21 +463,6 @@ const models = {
428
463
  "type": { "dataType": "nestedObjectLiteral", "nestedProperties": { "$pool": { "dataType": "string", "required": true }, "$poolId": { "dataType": "string", "required": true }, "_xapiRef": { "dataType": "string", "required": true }, "uuid": { "dataType": "string", "required": true }, "$VBDs": { "dataType": "array", "array": { "dataType": "string" }, "required": true }, "$VGPUs": { "dataType": "array", "array": { "dataType": "string" }, "required": true }, "$container": { "dataType": "string", "required": true }, "CPUs": { "dataType": "nestedObjectLiteral", "nestedProperties": { "number": { "dataType": "double", "required": true }, "max": { "dataType": "double", "required": true } }, "required": true }, "PV_args": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "VGPUs": { "dataType": "array", "array": { "dataType": "string" }, "required": true }, "VIFs": { "dataType": "array", "array": { "dataType": "string" }, "required": true }, "VTPMs": { "dataType": "array", "array": { "dataType": "string" }, "required": true }, "addresses": { "ref": "Record_string.string_", "required": true }, "affinityHost": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "attachedPcis": { "dataType": "union", "subSchemas": [{ "dataType": "array", "array": { "dataType": "string" } }, { "dataType": "undefined" }] }, "auto_poweron": { "dataType": "boolean", "required": true }, "bios_strings": { "ref": "Record_string.string_", "required": true }, "blockedOperations": { "ref": "Record_VM_OPERATIONS.string_", "required": true }, "boot": { "ref": "Record_string.string_", "required": true }, "coresPerSocket": { "dataType": "union", "subSchemas": [{ "dataType": "double" }, { "dataType": "undefined" }] }, "cpuCap": { "dataType": "union", "subSchemas": [{ "dataType": "double" }, { "dataType": "undefined" }] }, "cpuMask": { "dataType": "union", "subSchemas": [{ "dataType": "array", "array": { "dataType": "double" } }, { "dataType": "undefined" }] }, "cpuWeight": { "dataType": "union", "subSchemas": [{ "dataType": "double" }, { "dataType": "undefined" }] }, "creation": { "ref": "Record_string.string_", "required": true }, "current_operations": { "ref": "Record_string.VM_OPERATIONS_", "required": true }, "docker": { "dataType": "union", "subSchemas": [{ "dataType": "nestedObjectLiteral", "nestedProperties": { "version": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "process": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "info": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "enabled": { "dataType": "boolean", "required": true }, "containers": { "dataType": "union", "subSchemas": [{ "dataType": "array", "array": { "dataType": "string" } }, { "dataType": "undefined" }] } } }, { "dataType": "undefined" }] }, "expNestedHvm": { "dataType": "boolean", "required": true }, "isNestedVirtEnabled": { "dataType": "boolean", "required": true }, "hasVendorDevice": { "dataType": "boolean", "required": true }, "high_availability": { "dataType": "string", "required": true }, "installTime": { "dataType": "union", "subSchemas": [{ "dataType": "double" }, { "dataType": "enum", "enums": [null] }, { "dataType": "undefined" }] }, "isFirmwareSupported": { "dataType": "boolean", "required": true }, "memory": { "dataType": "nestedObjectLiteral", "nestedProperties": { "usage": { "dataType": "union", "subSchemas": [{ "dataType": "double" }, { "dataType": "undefined" }] }, "static": { "dataType": "array", "array": { "dataType": "double" }, "required": true }, "size": { "dataType": "double", "required": true }, "dynamic": { "dataType": "array", "array": { "dataType": "double" }, "required": true } }, "required": true }, "mainIpAddress": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "managementAgentDetected": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "name_description": { "dataType": "string", "required": true }, "name_label": { "dataType": "string", "required": true }, "needsVtpm": { "dataType": "boolean", "required": true }, "nicType": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "notes": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "os_version": { "dataType": "union", "subSchemas": [{ "ref": "Record_string.string_" }, { "dataType": "enum", "enums": [null] }], "required": true }, "other": { "ref": "Record_string.string_", "required": true }, "parent": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "power_state": { "ref": "VM_POWER_STATE", "required": true }, "pvDriversDetected": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "pvDriversUpToDate": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "pvDriversVersion": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "resourceSet": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "secureBoot": { "dataType": "boolean", "required": true }, "snapshots": { "dataType": "array", "array": { "dataType": "string" }, "required": true }, "startDelay": { "dataType": "double", "required": true }, "startTime": { "dataType": "union", "subSchemas": [{ "dataType": "double" }, { "dataType": "enum", "enums": [null] }, { "dataType": "undefined" }] }, "suspendSr": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "tags": { "dataType": "array", "array": { "dataType": "string" }, "required": true }, "vga": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "videoram": { "dataType": "union", "subSchemas": [{ "dataType": "double" }, { "dataType": "undefined" }] }, "viridian": { "dataType": "boolean", "required": true }, "virtualizationMode": { "ref": "DOMAIN_TYPE", "required": true }, "xenStoreData": { "ref": "Record_string.string_", "required": true }, "xentools": { "dataType": "union", "subSchemas": [{ "dataType": "enum", "enums": [false] }, { "dataType": "nestedObjectLiteral", "nestedProperties": { "version": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "enum", "enums": [null] }], "required": true }, "minor": { "dataType": "union", "subSchemas": [{ "dataType": "double" }, { "dataType": "enum", "enums": [null] }], "required": true }, "major": { "dataType": "union", "subSchemas": [{ "dataType": "double" }, { "dataType": "enum", "enums": [null] }], "required": true } } }, { "dataType": "undefined" }] }, "id": { "dataType": "string", "required": true }, "type": { "dataType": "enum", "enums": ["VM-controller"], "required": true } }, "validators": {} },
429
464
  },
430
465
  // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
431
- "Partial_Unbrand_XoVdi_-or-Unbrand_XoVdiSnapshot__": {
432
- "dataType": "refAlias",
433
- "type": { "dataType": "union", "subSchemas": [{ "dataType": "nestedObjectLiteral", "nestedProperties": { "$pool": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "$poolId": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "_xapiRef": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "uuid": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "$SR": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "$VBDs": { "dataType": "union", "subSchemas": [{ "dataType": "array", "array": { "dataType": "string" } }, { "dataType": "undefined" }] }, "VDI_type": { "dataType": "union", "subSchemas": [{ "ref": "VDI_TYPE" }, { "dataType": "undefined" }] }, "cbt_enabled": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "current_operations": { "dataType": "union", "subSchemas": [{ "ref": "Record_string.VDI_OPERATIONS_" }, { "dataType": "undefined" }] }, "missing": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "name_description": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "name_label": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "other_config": { "dataType": "union", "subSchemas": [{ "ref": "Record_string.string_" }, { "dataType": "undefined" }] }, "parent": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "image_format": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "size": { "dataType": "union", "subSchemas": [{ "dataType": "double" }, { "dataType": "undefined" }] }, "snapshots": { "dataType": "union", "subSchemas": [{ "dataType": "array", "array": { "dataType": "string" } }, { "dataType": "undefined" }] }, "tags": { "dataType": "union", "subSchemas": [{ "dataType": "array", "array": { "dataType": "string" } }, { "dataType": "undefined" }] }, "usage": { "dataType": "union", "subSchemas": [{ "dataType": "double" }, { "dataType": "undefined" }] }, "id": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "type": { "dataType": "union", "subSchemas": [{ "dataType": "enum", "enums": ["VDI"] }, { "dataType": "undefined" }] } } }, { "dataType": "nestedObjectLiteral", "nestedProperties": { "$pool": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "$poolId": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "_xapiRef": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "uuid": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "$SR": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "$VBDs": { "dataType": "union", "subSchemas": [{ "dataType": "array", "array": { "dataType": "string" } }, { "dataType": "undefined" }] }, "VDI_type": { "dataType": "union", "subSchemas": [{ "ref": "VDI_TYPE" }, { "dataType": "undefined" }] }, "cbt_enabled": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "current_operations": { "dataType": "union", "subSchemas": [{ "ref": "Record_string.VDI_OPERATIONS_" }, { "dataType": "undefined" }] }, "missing": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "name_description": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "name_label": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "other_config": { "dataType": "union", "subSchemas": [{ "ref": "Record_string.string_" }, { "dataType": "undefined" }] }, "parent": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "image_format": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "size": { "dataType": "union", "subSchemas": [{ "dataType": "double" }, { "dataType": "undefined" }] }, "snapshots": { "dataType": "union", "subSchemas": [{ "dataType": "array", "array": { "dataType": "string" } }, { "dataType": "undefined" }] }, "tags": { "dataType": "union", "subSchemas": [{ "dataType": "array", "array": { "dataType": "string" } }, { "dataType": "undefined" }] }, "usage": { "dataType": "union", "subSchemas": [{ "dataType": "double" }, { "dataType": "undefined" }] }, "id": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "snapshot_time": { "dataType": "union", "subSchemas": [{ "dataType": "double" }, { "dataType": "undefined" }] }, "$snapshot_of": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "type": { "dataType": "union", "subSchemas": [{ "dataType": "enum", "enums": ["VDI-snapshot"] }, { "dataType": "undefined" }] } } }], "validators": {} },
434
- },
435
- // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
436
- "WithHref_Partial_Unbrand_XoVdi_-or-Unbrand_XoVdiSnapshot___": {
437
- "dataType": "refAlias",
438
- "type": { "dataType": "intersection", "subSchemas": [{ "ref": "Partial_Unbrand_XoVdi_-or-Unbrand_XoVdiSnapshot__" }, { "dataType": "nestedObjectLiteral", "nestedProperties": { "href": { "dataType": "string", "required": true } } }], "validators": {} },
439
- },
440
- // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
441
- "SendObjects_Partial_Unbrand_XoVdi_-or-Unbrand_XoVdiSnapshot___": {
442
- "dataType": "refAlias",
443
- "type": { "dataType": "union", "subSchemas": [{ "dataType": "array", "array": { "dataType": "string" } }, { "dataType": "array", "array": { "dataType": "refAlias", "ref": "WithHref_Partial_Unbrand_XoVdi_-or-Unbrand_XoVdiSnapshot___" } }, { "ref": "NdjsonStream" }], "validators": {} },
444
- },
445
- // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
446
466
  "VIF_LOCKING_MODE": {
447
467
  "dataType": "refAlias",
448
468
  "type": { "dataType": "union", "subSchemas": [{ "dataType": "enum", "enums": ["disabled"] }, { "dataType": "enum", "enums": ["locked"] }, { "dataType": "enum", "enums": ["network_default"] }, { "dataType": "enum", "enums": ["unlocked"] }], "validators": {} },
@@ -488,6 +508,26 @@ const models = {
488
508
  "type": { "dataType": "nestedObjectLiteral", "nestedProperties": { "$pool": { "dataType": "string", "required": true }, "$poolId": { "dataType": "string", "required": true }, "_xapiRef": { "dataType": "string", "required": true }, "uuid": { "dataType": "string", "required": true }, "$SR": { "dataType": "string", "required": true }, "$VBDs": { "dataType": "array", "array": { "dataType": "string" }, "required": true }, "VDI_type": { "ref": "VDI_TYPE", "required": true }, "cbt_enabled": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "current_operations": { "ref": "Record_string.VDI_OPERATIONS_", "required": true }, "missing": { "dataType": "boolean", "required": true }, "name_description": { "dataType": "string", "required": true }, "name_label": { "dataType": "string", "required": true }, "other_config": { "ref": "Record_string.string_", "required": true }, "parent": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "image_format": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "size": { "dataType": "double", "required": true }, "snapshots": { "dataType": "array", "array": { "dataType": "string" }, "required": true }, "tags": { "dataType": "array", "array": { "dataType": "string" }, "required": true }, "usage": { "dataType": "double", "required": true }, "id": { "dataType": "string", "required": true }, "snapshot_time": { "dataType": "double", "required": true }, "$snapshot_of": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "type": { "dataType": "enum", "enums": ["VDI-snapshot"], "required": true } }, "validators": {} },
489
509
  },
490
510
  // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
511
+ "VBD_TYPE": {
512
+ "dataType": "refAlias",
513
+ "type": { "dataType": "union", "subSchemas": [{ "dataType": "enum", "enums": ["CD"] }, { "dataType": "enum", "enums": ["Disk"] }, { "dataType": "enum", "enums": ["Floppy"] }], "validators": {} },
514
+ },
515
+ // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
516
+ "VBD_MODE": {
517
+ "dataType": "refAlias",
518
+ "type": { "dataType": "union", "subSchemas": [{ "dataType": "enum", "enums": ["RO"] }, { "dataType": "enum", "enums": ["RW"] }], "validators": {} },
519
+ },
520
+ // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
521
+ "Pick_Unbrand_Parameters_Xapi_91_VBD_create_93___91_0_93__.Exclude_keyofUnbrand_Parameters_Xapi_91_VBD_create_93___91_0_93__.VM-or-VDI__": {
522
+ "dataType": "refAlias",
523
+ "type": { "dataType": "nestedObjectLiteral", "nestedProperties": { "type": { "dataType": "union", "subSchemas": [{ "ref": "VBD_TYPE" }, { "dataType": "undefined" }] }, "other_config": { "dataType": "union", "subSchemas": [{ "ref": "Record_string.string_" }, { "dataType": "undefined" }] }, "mode": { "dataType": "union", "subSchemas": [{ "ref": "VBD_MODE" }, { "dataType": "undefined" }] }, "bootable": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "empty": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "qos_algorithm_params": { "dataType": "union", "subSchemas": [{ "ref": "Record_string.string_" }, { "dataType": "undefined" }] }, "qos_algorithm_type": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "unpluggable": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "userdevice": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] } }, "validators": {} },
524
+ },
525
+ // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
526
+ "Omit_Unbrand_Parameters_Xapi_91_VBD_create_93___91_0_93__.VM-or-VDI_": {
527
+ "dataType": "refAlias",
528
+ "type": { "ref": "Pick_Unbrand_Parameters_Xapi_91_VBD_create_93___91_0_93__.Exclude_keyofUnbrand_Parameters_Xapi_91_VBD_create_93___91_0_93__.VM-or-VDI__", "validators": {} },
529
+ },
530
+ // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
491
531
  "Partial_Unbrand_XoVbd__": {
492
532
  "dataType": "refAlias",
493
533
  "type": { "dataType": "nestedObjectLiteral", "nestedProperties": { "$pool": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "$poolId": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "_xapiRef": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "uuid": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "attached": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "bootable": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "device": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "enum", "enums": [null] }, { "dataType": "undefined" }] }, "id": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "is_cd_drive": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "position": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "read_only": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "type": { "dataType": "union", "subSchemas": [{ "dataType": "enum", "enums": ["VBD"] }, { "dataType": "undefined" }] }, "VDI": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "VM": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] } }, "validators": {} },
@@ -762,7 +802,7 @@ const models = {
762
802
  // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
763
803
  "Unbrand_CreateVmBody_": {
764
804
  "dataType": "refAlias",
765
- "type": { "dataType": "nestedObjectLiteral", "nestedProperties": { "memory": { "dataType": "union", "subSchemas": [{ "dataType": "double" }, { "dataType": "undefined" }] }, "name_description": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "name_label": { "dataType": "string", "required": true }, "clone": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "gpuGroup": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "vgpuType": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "autoPoweron": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "vifs": { "dataType": "union", "subSchemas": [{ "dataType": "array", "array": { "dataType": "union", "subSchemas": [{ "dataType": "nestedObjectLiteral", "nestedProperties": { "network": { "dataType": "string", "required": true }, "mtu": { "dataType": "union", "subSchemas": [{ "dataType": "double" }, { "dataType": "undefined" }] }, "mac": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "ipv6_allowed": { "dataType": "union", "subSchemas": [{ "dataType": "array", "array": { "dataType": "string" } }, { "dataType": "undefined" }] }, "ipv4_allowed": { "dataType": "union", "subSchemas": [{ "dataType": "array", "array": { "dataType": "string" } }, { "dataType": "undefined" }] }, "device": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] } } }, { "dataType": "nestedObjectLiteral", "nestedProperties": { "device": { "dataType": "string", "required": true }, "destroy": { "dataType": "enum", "enums": [true], "required": true } } }] } }, { "dataType": "undefined" }] }, "copyHostBiosStrings": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "hvmBootFirmware": { "dataType": "union", "subSchemas": [{ "dataType": "enum", "enums": ["uefi"] }, { "dataType": "enum", "enums": ["bios"] }, { "dataType": "undefined" }] }, "template": { "dataType": "string", "required": true }, "affinity": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "vdis": { "dataType": "union", "subSchemas": [{ "dataType": "array", "array": { "dataType": "union", "subSchemas": [{ "dataType": "nestedObjectLiteral", "nestedProperties": { "name_description": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "sr": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "size": { "dataType": "double", "required": true }, "name_label": { "dataType": "string", "required": true } } }, { "dataType": "nestedObjectLiteral", "nestedProperties": { "name_description": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "sr": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "size": { "dataType": "union", "subSchemas": [{ "dataType": "double" }, { "dataType": "undefined" }] }, "name_label": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "userdevice": { "dataType": "string", "required": true } } }, { "dataType": "nestedObjectLiteral", "nestedProperties": { "userdervice": { "dataType": "string", "required": true }, "destroy": { "dataType": "enum", "enums": [true], "required": true } } }] } }, { "dataType": "undefined" }] }, "install": { "dataType": "union", "subSchemas": [{ "dataType": "nestedObjectLiteral", "nestedProperties": { "repository": { "dataType": "string", "required": true }, "method": { "dataType": "union", "subSchemas": [{ "dataType": "enum", "enums": ["network"] }, { "dataType": "enum", "enums": ["cdrom"] }], "required": true } } }, { "dataType": "undefined" }] }, "cloud_config": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "network_config": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "boot": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "destroy_cloud_config_vdi": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] } }, "validators": {} },
805
+ "type": { "dataType": "nestedObjectLiteral", "nestedProperties": { "memory": { "dataType": "union", "subSchemas": [{ "dataType": "double" }, { "dataType": "undefined" }] }, "name_description": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "name_label": { "dataType": "string", "required": true }, "secureBoot": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "clone": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "gpuGroup": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "vgpuType": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "autoPoweron": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "vifs": { "dataType": "union", "subSchemas": [{ "dataType": "array", "array": { "dataType": "union", "subSchemas": [{ "dataType": "nestedObjectLiteral", "nestedProperties": { "network": { "dataType": "string", "required": true }, "mtu": { "dataType": "union", "subSchemas": [{ "dataType": "double" }, { "dataType": "undefined" }] }, "mac": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "ipv6_allowed": { "dataType": "union", "subSchemas": [{ "dataType": "array", "array": { "dataType": "string" } }, { "dataType": "undefined" }] }, "ipv4_allowed": { "dataType": "union", "subSchemas": [{ "dataType": "array", "array": { "dataType": "string" } }, { "dataType": "undefined" }] }, "device": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] } } }, { "dataType": "nestedObjectLiteral", "nestedProperties": { "device": { "dataType": "string", "required": true }, "destroy": { "dataType": "enum", "enums": [true], "required": true } } }] } }, { "dataType": "undefined" }] }, "copyHostBiosStrings": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "hvmBootFirmware": { "dataType": "union", "subSchemas": [{ "dataType": "enum", "enums": ["uefi"] }, { "dataType": "enum", "enums": ["bios"] }, { "dataType": "undefined" }] }, "template": { "dataType": "string", "required": true }, "affinity": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "vdis": { "dataType": "union", "subSchemas": [{ "dataType": "array", "array": { "dataType": "union", "subSchemas": [{ "dataType": "nestedObjectLiteral", "nestedProperties": { "name_description": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "sr": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "size": { "dataType": "double", "required": true }, "name_label": { "dataType": "string", "required": true } } }, { "dataType": "nestedObjectLiteral", "nestedProperties": { "name_description": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "sr": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "size": { "dataType": "union", "subSchemas": [{ "dataType": "double" }, { "dataType": "undefined" }] }, "name_label": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "userdevice": { "dataType": "string", "required": true } } }, { "dataType": "nestedObjectLiteral", "nestedProperties": { "userdervice": { "dataType": "string", "required": true }, "destroy": { "dataType": "enum", "enums": [true], "required": true } } }] } }, { "dataType": "undefined" }] }, "install": { "dataType": "union", "subSchemas": [{ "dataType": "nestedObjectLiteral", "nestedProperties": { "repository": { "dataType": "string", "required": true }, "method": { "dataType": "union", "subSchemas": [{ "dataType": "enum", "enums": ["network"] }, { "dataType": "enum", "enums": ["cdrom"] }], "required": true } } }, { "dataType": "undefined" }] }, "cloud_config": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "network_config": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "undefined" }] }, "boot": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "destroy_cloud_config_vdi": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] }, "createVtpm": { "dataType": "union", "subSchemas": [{ "dataType": "boolean" }, { "dataType": "undefined" }] } }, "validators": {} },
766
806
  },
767
807
  // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
768
808
  "XapiHostStatsRaw": {
@@ -3570,6 +3610,33 @@ export function RegisterRoutes(app) {
3570
3610
  }
3571
3611
  });
3572
3612
  // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
3613
+ const argsVbdController_createVbd = {
3614
+ body: { "in": "body", "name": "body", "required": true, "dataType": "intersection", "subSchemas": [{ "ref": "Omit_Unbrand_Parameters_Xapi_91_VBD_create_93___91_0_93__.VM-or-VDI_" }, { "dataType": "nestedObjectLiteral", "nestedProperties": { "VDI": { "dataType": "string", "required": true }, "VM": { "dataType": "string", "required": true } } }] },
3615
+ };
3616
+ app.post('/rest/v0/vbds', authenticateMiddleware([{ "*": [] }]), ...(fetchMiddlewares(VbdController)), ...(fetchMiddlewares(VbdController.prototype.createVbd)), async function VbdController_createVbd(request, response, next) {
3617
+ // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
3618
+ let validatedArgs = [];
3619
+ try {
3620
+ validatedArgs = templateService.getValidatedArgs({ args: argsVbdController_createVbd, request, response });
3621
+ const container = typeof iocContainer === 'function' ? iocContainer(request) : iocContainer;
3622
+ const controller = await container.get(VbdController);
3623
+ if (typeof controller['setStatus'] === 'function') {
3624
+ controller.setStatus(undefined);
3625
+ }
3626
+ await templateService.apiHandler({
3627
+ methodName: 'createVbd',
3628
+ controller,
3629
+ response,
3630
+ next,
3631
+ validatedArgs,
3632
+ successStatus: 201,
3633
+ });
3634
+ }
3635
+ catch (err) {
3636
+ return next(err);
3637
+ }
3638
+ });
3639
+ // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
3573
3640
  const argsVbdController_getVbds = {
3574
3641
  req: { "in": "request", "name": "req", "required": true, "dataType": "object" },
3575
3642
  fields: { "in": "query", "name": "fields", "dataType": "string" },
@@ -3628,6 +3695,33 @@ export function RegisterRoutes(app) {
3628
3695
  }
3629
3696
  });
3630
3697
  // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
3698
+ const argsVbdController_deleteVbd = {
3699
+ id: { "in": "path", "name": "id", "required": true, "dataType": "string" },
3700
+ };
3701
+ app.delete('/rest/v0/vbds/:id', authenticateMiddleware([{ "*": [] }]), ...(fetchMiddlewares(VbdController)), ...(fetchMiddlewares(VbdController.prototype.deleteVbd)), async function VbdController_deleteVbd(request, response, next) {
3702
+ // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
3703
+ let validatedArgs = [];
3704
+ try {
3705
+ validatedArgs = templateService.getValidatedArgs({ args: argsVbdController_deleteVbd, request, response });
3706
+ const container = typeof iocContainer === 'function' ? iocContainer(request) : iocContainer;
3707
+ const controller = await container.get(VbdController);
3708
+ if (typeof controller['setStatus'] === 'function') {
3709
+ controller.setStatus(undefined);
3710
+ }
3711
+ await templateService.apiHandler({
3712
+ methodName: 'deleteVbd',
3713
+ controller,
3714
+ response,
3715
+ next,
3716
+ validatedArgs,
3717
+ successStatus: 204,
3718
+ });
3719
+ }
3720
+ catch (err) {
3721
+ return next(err);
3722
+ }
3723
+ });
3724
+ // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
3631
3725
  const argsVbdController_getVbdAlarms = {
3632
3726
  req: { "in": "request", "name": "req", "required": true, "dataType": "object" },
3633
3727
  id: { "in": "path", "name": "id", "required": true, "dataType": "string" },
@@ -3986,7 +4080,7 @@ export function RegisterRoutes(app) {
3986
4080
  });
3987
4081
  // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
3988
4082
  const argsUserController_postAuthenticationTokens = {
3989
- body: { "in": "body", "name": "body", "required": true, "dataType": "nestedObjectLiteral", "nestedProperties": { "expiresIn": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "double" }] }, "description": { "dataType": "string" }, "client": { "dataType": "nestedObjectLiteral", "nestedProperties": { "id": { "dataType": "enum", "enums": ["string"] } } } } },
4083
+ body: { "in": "body", "name": "body", "required": true, "dataType": "nestedObjectLiteral", "nestedProperties": { "expiresIn": { "dataType": "union", "subSchemas": [{ "dataType": "string" }, { "dataType": "double" }] }, "description": { "dataType": "string" }, "client": { "dataType": "nestedObjectLiteral", "nestedProperties": { "id": { "dataType": "string" } } } } },
3990
4084
  id: { "in": "path", "name": "id", "required": true, "dataType": "string" },
3991
4085
  };
3992
4086
  app.post('/rest/v0/users/:id/authentication_tokens', authenticateMiddleware([{ "*": [] }]), ...(fetchMiddlewares(UserController)), ...(fetchMiddlewares(UserController.prototype.postAuthenticationTokens)), async function UserController_postAuthenticationTokens(request, response, next) {
@@ -5378,6 +5472,35 @@ export function RegisterRoutes(app) {
5378
5472
  }
5379
5473
  });
5380
5474
  // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
5475
+ const argsPoolController_managementReconfigure = {
5476
+ id: { "in": "path", "name": "id", "required": true, "dataType": "string" },
5477
+ body: { "in": "body", "name": "body", "required": true, "dataType": "nestedObjectLiteral", "nestedProperties": { "network": { "dataType": "string", "required": true } } },
5478
+ sync: { "in": "query", "name": "sync", "dataType": "boolean" },
5479
+ };
5480
+ app.post('/rest/v0/pools/:id/actions/management_reconfigure', authenticateMiddleware([{ "*": [] }]), ...(fetchMiddlewares(PoolController)), ...(fetchMiddlewares(PoolController.prototype.managementReconfigure)), async function PoolController_managementReconfigure(request, response, next) {
5481
+ // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
5482
+ let validatedArgs = [];
5483
+ try {
5484
+ validatedArgs = templateService.getValidatedArgs({ args: argsPoolController_managementReconfigure, request, response });
5485
+ const container = typeof iocContainer === 'function' ? iocContainer(request) : iocContainer;
5486
+ const controller = await container.get(PoolController);
5487
+ if (typeof controller['setStatus'] === 'function') {
5488
+ controller.setStatus(undefined);
5489
+ }
5490
+ await templateService.apiHandler({
5491
+ methodName: 'managementReconfigure',
5492
+ controller,
5493
+ response,
5494
+ next,
5495
+ validatedArgs,
5496
+ successStatus: 202,
5497
+ });
5498
+ }
5499
+ catch (err) {
5500
+ return next(err);
5501
+ }
5502
+ });
5503
+ // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
5381
5504
  const argsPifController_getPifs = {
5382
5505
  req: { "in": "request", "name": "req", "required": true, "dataType": "object" },
5383
5506
  fields: { "in": "query", "name": "fields", "dataType": "string" },
@@ -6349,6 +6472,35 @@ export function RegisterRoutes(app) {
6349
6472
  }
6350
6473
  });
6351
6474
  // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
6475
+ const argsHostController_managementReconfigure = {
6476
+ id: { "in": "path", "name": "id", "required": true, "dataType": "string" },
6477
+ body: { "in": "body", "name": "body", "required": true, "dataType": "nestedObjectLiteral", "nestedProperties": { "pif": { "dataType": "string", "required": true } } },
6478
+ sync: { "in": "query", "name": "sync", "dataType": "boolean" },
6479
+ };
6480
+ app.post('/rest/v0/hosts/:id/actions/management_reconfigure', authenticateMiddleware([{ "*": [] }]), ...(fetchMiddlewares(HostController)), ...(fetchMiddlewares(HostController.prototype.managementReconfigure)), async function HostController_managementReconfigure(request, response, next) {
6481
+ // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
6482
+ let validatedArgs = [];
6483
+ try {
6484
+ validatedArgs = templateService.getValidatedArgs({ args: argsHostController_managementReconfigure, request, response });
6485
+ const container = typeof iocContainer === 'function' ? iocContainer(request) : iocContainer;
6486
+ const controller = await container.get(HostController);
6487
+ if (typeof controller['setStatus'] === 'function') {
6488
+ controller.setStatus(undefined);
6489
+ }
6490
+ await templateService.apiHandler({
6491
+ methodName: 'managementReconfigure',
6492
+ controller,
6493
+ response,
6494
+ next,
6495
+ validatedArgs,
6496
+ successStatus: 202,
6497
+ });
6498
+ }
6499
+ catch (err) {
6500
+ return next(err);
6501
+ }
6502
+ });
6503
+ // WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
6352
6504
  const argsGroupController_getGroups = {
6353
6505
  req: { "in": "request", "name": "req", "required": true, "dataType": "object" },
6354
6506
  fields: { "in": "query", "name": "fields", "dataType": "string" },