/* tslint:disable */ /* eslint-disable */ /** * Assisted Migration Agent API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * The version of the OpenAPI document: v1 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { mapValues } from '../runtime.js'; import type { VMNIC } from './VMNIC.js'; import { VMNICFromJSON, VMNICFromJSONTyped, VMNICToJSON, VMNICToJSONTyped, } from './VMNIC.js'; import type { GuestNetwork } from './GuestNetwork.js'; import { GuestNetworkFromJSON, GuestNetworkFromJSONTyped, GuestNetworkToJSON, GuestNetworkToJSONTyped, } from './GuestNetwork.js'; import type { VMIssue } from './VMIssue.js'; import { VMIssueFromJSON, VMIssueFromJSONTyped, VMIssueToJSON, VMIssueToJSONTyped, } from './VMIssue.js'; import type { VMDevice } from './VMDevice.js'; import { VMDeviceFromJSON, VMDeviceFromJSONTyped, VMDeviceToJSON, VMDeviceToJSONTyped, } from './VMDevice.js'; import type { VMDisk } from './VMDisk.js'; import { VMDiskFromJSON, VMDiskFromJSONTyped, VMDiskToJSON, VMDiskToJSONTyped, } from './VMDisk.js'; import type { VmInspectionResults } from './VmInspectionResults.js'; import { VmInspectionResultsFromJSON, VmInspectionResultsFromJSONTyped, VmInspectionResultsToJSON, VmInspectionResultsToJSONTyped, } from './VmInspectionResults.js'; /** * * @export * @interface VirtualMachineDetail */ export interface VirtualMachineDetail { /** * Unique identifier for the VirtualMachine in vCenter * @type {string} * @memberof VirtualMachineDetail */ id: string; /** * Display name of the VirtualMachine * @type {string} * @memberof VirtualMachineDetail */ name: string; /** * Universally unique identifier assigned by vCenter * @type {string} * @memberof VirtualMachineDetail */ uuid?: string; /** * Firmware type used by the VirtualMachine (bios or efi) * @type {string} * @memberof VirtualMachineDetail */ firmware?: string; /** * Current power state of the VirtualMachine (poweredOn, poweredOff, or suspended) * @type {string} * @memberof VirtualMachineDetail */ powerState: string; /** * State of the connection between vCenter and the VirtualMachine's host (connected, disconnected, orphaned, or inaccessible) * @type {string} * @memberof VirtualMachineDetail */ connectionState: string; /** * Reference to the ESXi host where the VirtualMachine is running * @type {string} * @memberof VirtualMachineDetail */ host?: string; /** * Name of the datacenter containing the VirtualMachine * @type {string} * @memberof VirtualMachineDetail */ datacenter?: string; /** * Name of the cluster containing the VirtualMachine * @type {string} * @memberof VirtualMachineDetail */ cluster?: string; /** * Reference to the inventory folder containing the VirtualMachine * @type {string} * @memberof VirtualMachineDetail */ folder?: string; /** * Total number of virtual CPUs allocated to the VirtualMachine * @type {number} * @memberof VirtualMachineDetail */ cpuCount: number; /** * Number of CPU cores per virtual socket * @type {number} * @memberof VirtualMachineDetail */ coresPerSocket: number; /** * List of physical CPU IDs the VirtualMachine is pinned to for scheduling * @type {Array} * @memberof VirtualMachineDetail */ cpuAffinity?: Array; /** * Amount of memory allocated to the VirtualMachine in megabytes * @type {number} * @memberof VirtualMachineDetail */ memoryMB: number; /** * Full name of the guest operating system as reported by VMware Tools * @type {string} * @memberof VirtualMachineDetail */ guestName?: string; /** * VMware identifier for the guest OS type (e.g., rhel8_64Guest) * @type {string} * @memberof VirtualMachineDetail */ guestId?: string; /** * Hostname of the guest OS as reported by VMware Tools * @type {string} * @memberof VirtualMachineDetail */ hostName?: string; /** * Primary IP address of the guest OS as reported by VMware Tools * @type {string} * @memberof VirtualMachineDetail */ ipAddress?: string; /** * Total storage space consumed by the VirtualMachine in bytes * @type {number} * @memberof VirtualMachineDetail */ storageUsed?: number; /** * Whether the VirtualMachine is a template rather than a regular VirtualMachine * @type {boolean} * @memberof VirtualMachineDetail */ template?: boolean; /** * Whether the VirtualMachine can be migrated (true if no critical issues) * @type {boolean} * @memberof VirtualMachineDetail */ migratable?: boolean; /** * Whether VMware Fault Tolerance is enabled, which maintains a live shadow VirtualMachine for instant failover * @type {boolean} * @memberof VirtualMachineDetail */ faultToleranceEnabled?: boolean; /** * Whether nested virtualization is enabled, allowing hypervisors to run inside the VirtualMachine * @type {boolean} * @memberof VirtualMachineDetail */ nestedHVEnabled?: boolean; /** * Installation status of VMware Tools (toolsNotInstalled, toolsNotRunning, toolsOld, toolsOk) * @type {string} * @memberof VirtualMachineDetail */ toolsStatus?: string; /** * Whether VMware Tools is currently running in the guest OS * @type {string} * @memberof VirtualMachineDetail */ toolsRunningStatus?: string; /** * List of virtual disks attached to the VirtualMachine * @type {Array} * @memberof VirtualMachineDetail */ disks: Array; /** * List of virtual network interface cards attached to the VirtualMachine * @type {Array} * @memberof VirtualMachineDetail */ nics: Array; /** * List of other virtual devices attached to the VirtualMachine * @type {Array} * @memberof VirtualMachineDetail */ devices?: Array; /** * Network configuration inside the guest OS as reported by VMware Tools * @type {Array} * @memberof VirtualMachineDetail */ guestNetworks?: Array; /** * List of issues affecting this VirtualMachine * @type {Array} * @memberof VirtualMachineDetail */ issues?: Array; /** * * @type {VmInspectionResults} * @memberof VirtualMachineDetail */ inspection?: VmInspectionResults; } /** * Check if a given object implements the VirtualMachineDetail interface. */ export function instanceOfVirtualMachineDetail(value: object): value is VirtualMachineDetail { if (!('id' in value) || value['id'] === undefined) return false; if (!('name' in value) || value['name'] === undefined) return false; if (!('powerState' in value) || value['powerState'] === undefined) return false; if (!('connectionState' in value) || value['connectionState'] === undefined) return false; if (!('cpuCount' in value) || value['cpuCount'] === undefined) return false; if (!('coresPerSocket' in value) || value['coresPerSocket'] === undefined) return false; if (!('memoryMB' in value) || value['memoryMB'] === undefined) return false; if (!('disks' in value) || value['disks'] === undefined) return false; if (!('nics' in value) || value['nics'] === undefined) return false; return true; } export function VirtualMachineDetailFromJSON(json: any): VirtualMachineDetail { return VirtualMachineDetailFromJSONTyped(json, false); } export function VirtualMachineDetailFromJSONTyped(json: any, ignoreDiscriminator: boolean): VirtualMachineDetail { if (json == null) { return json; } return { 'id': json['id'], 'name': json['name'], 'uuid': json['uuid'] == null ? undefined : json['uuid'], 'firmware': json['firmware'] == null ? undefined : json['firmware'], 'powerState': json['powerState'], 'connectionState': json['connectionState'], 'host': json['host'] == null ? undefined : json['host'], 'datacenter': json['datacenter'] == null ? undefined : json['datacenter'], 'cluster': json['cluster'] == null ? undefined : json['cluster'], 'folder': json['folder'] == null ? undefined : json['folder'], 'cpuCount': json['cpuCount'], 'coresPerSocket': json['coresPerSocket'], 'cpuAffinity': json['cpuAffinity'] == null ? undefined : json['cpuAffinity'], 'memoryMB': json['memoryMB'], 'guestName': json['guestName'] == null ? undefined : json['guestName'], 'guestId': json['guestId'] == null ? undefined : json['guestId'], 'hostName': json['hostName'] == null ? undefined : json['hostName'], 'ipAddress': json['ipAddress'] == null ? undefined : json['ipAddress'], 'storageUsed': json['storageUsed'] == null ? undefined : json['storageUsed'], 'template': json['template'] == null ? undefined : json['template'], 'migratable': json['migratable'] == null ? undefined : json['migratable'], 'faultToleranceEnabled': json['faultToleranceEnabled'] == null ? undefined : json['faultToleranceEnabled'], 'nestedHVEnabled': json['nestedHVEnabled'] == null ? undefined : json['nestedHVEnabled'], 'toolsStatus': json['toolsStatus'] == null ? undefined : json['toolsStatus'], 'toolsRunningStatus': json['toolsRunningStatus'] == null ? undefined : json['toolsRunningStatus'], 'disks': ((json['disks'] as Array).map(VMDiskFromJSON)), 'nics': ((json['nics'] as Array).map(VMNICFromJSON)), 'devices': json['devices'] == null ? undefined : ((json['devices'] as Array).map(VMDeviceFromJSON)), 'guestNetworks': json['guestNetworks'] == null ? undefined : ((json['guestNetworks'] as Array).map(GuestNetworkFromJSON)), 'issues': json['issues'] == null ? undefined : ((json['issues'] as Array).map(VMIssueFromJSON)), 'inspection': json['inspection'] == null ? undefined : VmInspectionResultsFromJSON(json['inspection']), }; } export function VirtualMachineDetailToJSON(json: any): VirtualMachineDetail { return VirtualMachineDetailToJSONTyped(json, false); } export function VirtualMachineDetailToJSONTyped(value?: VirtualMachineDetail | null, ignoreDiscriminator: boolean = false): any { if (value == null) { return value; } return { 'id': value['id'], 'name': value['name'], 'uuid': value['uuid'], 'firmware': value['firmware'], 'powerState': value['powerState'], 'connectionState': value['connectionState'], 'host': value['host'], 'datacenter': value['datacenter'], 'cluster': value['cluster'], 'folder': value['folder'], 'cpuCount': value['cpuCount'], 'coresPerSocket': value['coresPerSocket'], 'cpuAffinity': value['cpuAffinity'], 'memoryMB': value['memoryMB'], 'guestName': value['guestName'], 'guestId': value['guestId'], 'hostName': value['hostName'], 'ipAddress': value['ipAddress'], 'storageUsed': value['storageUsed'], 'template': value['template'], 'migratable': value['migratable'], 'faultToleranceEnabled': value['faultToleranceEnabled'], 'nestedHVEnabled': value['nestedHVEnabled'], 'toolsStatus': value['toolsStatus'], 'toolsRunningStatus': value['toolsRunningStatus'], 'disks': ((value['disks'] as Array).map(VMDiskToJSON)), 'nics': ((value['nics'] as Array).map(VMNICToJSON)), 'devices': value['devices'] == null ? undefined : ((value['devices'] as Array).map(VMDeviceToJSON)), 'guestNetworks': value['guestNetworks'] == null ? undefined : ((value['guestNetworks'] as Array).map(GuestNetworkToJSON)), 'issues': value['issues'] == null ? undefined : ((value['issues'] as Array).map(VMIssueToJSON)), 'inspection': VmInspectionResultsToJSON(value['inspection']), }; }