@vates/types 1.18.0 → 1.20.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.
@@ -1,7 +1,7 @@
1
- import { WrappedXenApiRecord, XenApiHost, XenApiNetworkWrapped, XenApiRecord, XenApiSr, XenApiTask, XenApiVbd, XenApiVdi, XenApiVm, XenApiVmWrapped, XenApiVtpm } from '../xen-api.mjs';
2
- import type { OPAQUE_REF_NULL, SUPPORTED_VDI_FORMAT, VBD_MODE, VBD_TYPE } from '../common.mjs';
1
+ import { WrappedXenApiRecord, XenApiHost, XenApiNetwork, XenApiNetworkWrapped, XenApiRecord, XenApiSr, XenApiTask, XenApiVbd, XenApiVdi, XenApiVif, XenApiVm, XenApiVmWrapped, XenApiVtpm } from '../xen-api.mjs';
2
+ import type { OPAQUE_REF_NULL, SUPPORTED_VDI_FORMAT, VBD_MODE, VBD_TYPE, VDI_TYPE, VIF_LOCKING_MODE } from '../common.mjs';
3
3
  import type { PassThrough, Readable } from 'node:stream';
4
- import type { XoGpuGroup, XoHost, XoNetwork, XoPif, XoSr, XoUser, XoVdi, XoVgpuType, XoVm, XoVmTemplate } from '../xo.mjs';
4
+ import type { XoGpuGroup, XoHost, XoNetwork, XoPif, XoSr, XoUser, XoVdi, XoVgpuType, XoVm, XoVmTemplate, XoVif } from '../xo.mjs';
5
5
  export type XcpPatches = {
6
6
  changelog?: {
7
7
  author: string;
@@ -33,6 +33,9 @@ export type XsPatches = {
33
33
  export interface Xapi {
34
34
  call: <ReturnType>(...args: unknown[]) => Promise<ReturnType>;
35
35
  callAsync: <ReturnType>(...args: unknown[]) => Promise<ReturnType>;
36
+ barrier<T extends XenApiRecord>(ref: T['$ref']): Promise<Extract<WrappedXenApiRecord, {
37
+ $ref: T['$ref'];
38
+ }>>;
36
39
  getField<T extends XenApiRecord, K extends keyof T>(type: Extract<WrappedXenApiRecord, T>['$type'], ref: T['$ref'], field: K): Promise<T[K]>;
37
40
  createNetwork(params: {
38
41
  name: string;
@@ -46,7 +49,16 @@ export interface Xapi {
46
49
  vlan: number;
47
50
  }): Promise<XenApiNetworkWrapped>;
48
51
  deleteNetwork(id: XoNetwork['id']): Promise<void>;
52
+ deleteVif(vifId: XoVif['id']): Promise<void>;
49
53
  exportVmOva(vmRef: XenApiVm['$ref']): Promise<PassThrough>;
54
+ migrateVm(vmId: XoVm['id'], hostXapi: Xapi, hostId: XoHost['id'], opts?: {
55
+ force?: boolean;
56
+ mapVdisSrs?: Record<XoVdi['id'], XoSr['id']>;
57
+ mapVifsNetworks?: Record<XoVif['id'], XoNetwork['id']>;
58
+ migrationNetworkId?: XoNetwork['id'];
59
+ sr?: XoSr['id'];
60
+ bypassAssert?: boolean;
61
+ }): Promise<void>;
50
62
  listMissingPatches(host: XoHost['id']): Promise<XcpPatches[] | XsPatches[]>;
51
63
  pool_emergencyShutdown(): Promise<void>;
52
64
  resumeVm(id: XoVm['id']): Promise<void>;
@@ -64,6 +76,7 @@ export interface Xapi {
64
76
  virtual_size?: XoVdi['size'];
65
77
  xenstore_data?: Record<string, string>;
66
78
  }): Promise<XenApiVdi['$ref']>;
79
+ SR_reclaimSpace(ref: XenApiSr['$ref']): Promise<void>;
67
80
  startVm(id: XoVm['id'], opts?: {
68
81
  bypassMacAddressesCheck?: boolean;
69
82
  force?: boolean;
@@ -148,6 +161,20 @@ export interface Xapi {
148
161
  }): Promise<XenApiVbd['$ref']>;
149
162
  VBD_destroy(vbdRef: XenApiVbd['$ref']): Promise<void>;
150
163
  VBD_unplug(vbdRef: XenApiVbd['$ref']): Promise<void>;
164
+ VDI_create(options: {
165
+ name_description?: XoVdi['name_description'];
166
+ name_label?: XoVdi['name_label'];
167
+ other_config?: XoVdi['other_config'];
168
+ read_only?: boolean;
169
+ sharable?: boolean;
170
+ SR?: XenApiSr['$ref'];
171
+ tags?: XoVdi['tags'];
172
+ type?: VDI_TYPE;
173
+ virtual_size: XoVdi['size'];
174
+ xenstore_data?: Record<string, string>;
175
+ }, extraOptions?: {
176
+ sm_config?: Record<string, string>;
177
+ }): Promise<XenApiVdi['$ref']>;
151
178
  VDI_destroy(vdiRef: XenApiVdi['$ref']): Promise<void>;
152
179
  VDI_destroyCloudInitConfig(vdiRef: XenApiVdi['$ref'], opts?: {
153
180
  timeLimit?: number;
@@ -163,6 +190,21 @@ export interface Xapi {
163
190
  cancelToken?: unknown;
164
191
  format: SUPPORTED_VDI_FORMAT;
165
192
  }): Promise<void>;
193
+ VIF_create(options: {
194
+ currently_attached?: boolean;
195
+ device?: string;
196
+ ipv4_allowed?: string[];
197
+ ipv6_allowed?: string[];
198
+ locking_mode?: VIF_LOCKING_MODE;
199
+ MTU?: number;
200
+ network: XenApiNetwork['$ref'];
201
+ other_config?: Record<string, string>;
202
+ qos_algorithm_params?: Record<string, string>;
203
+ qos_algorithm_type?: string;
204
+ VM: XenApiVm['$ref'];
205
+ }, extraOptions?: {
206
+ MAC?: string;
207
+ }): Promise<XenApiVif['$ref']>;
166
208
  VM_createCloudInitConfig(vmRef: XenApiVm['$ref'], cloudConfig: string, opts?: {
167
209
  networkConfig?: string;
168
210
  }): Promise<XoVdi['uuid']>;
package/dist/xo-app.d.mts CHANGED
@@ -41,6 +41,7 @@ type XapiRecordByXapiXoRecord = {
41
41
  };
42
42
  export type XoApp = {
43
43
  config: {
44
+ get<T = string>(path: string): T;
44
45
  getOptional(path: string): Record<string, string> | undefined;
45
46
  getOptionalDuration(path: string): number | undefined;
46
47
  getGuiRoutes(): Promise<{
@@ -98,6 +99,7 @@ export type XoApp = {
98
99
  ip?: string;
99
100
  }, opts?: {
100
101
  bypassOtp?: boolean;
102
+ bypassTaskCreation?: boolean;
101
103
  }) => Promise<{
102
104
  bypassOtp: boolean;
103
105
  expiration: number;
package/dist/xo.d.mts CHANGED
@@ -608,6 +608,7 @@ export type XoTask = {
608
608
  method?: string;
609
609
  name?: string;
610
610
  objectId?: string;
611
+ objectType?: XapiXoRecord['type'] | 'backup' | 'backup-archive' | 'backup-job' | 'backup-log' | 'backup-repository' | 'group' | 'proxy' | 'restore' | 'restore-log' | 'schedule' | 'server' | 'task' | 'user';
611
612
  params?: Record<string, unknown>;
612
613
  progress?: number;
613
614
  type?: string;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@vates/types",
3
3
  "private": false,
4
- "version": "1.18.0",
4
+ "version": "1.20.0",
5
5
  "main": "./dist/index.mjs",
6
6
  "exports": {
7
7
  ".": {