@if (result) {

{{ t('Proxmox overview') }}

} @if (!result) { } @if (result && result.response && !result.response.found) {
{{ t('Virtual maschine or LXC container could not be found in Proxmox VE!') }}
} @if (result && result.response && result.response.found) {
@if (result.response.current && 'lock' in result.response.current && result.response.current.lock === 'migrate') { } @else { @if (result.response.info?.status === 'running') { } @else if (result.response.info?.status === 'paused') { } @else { } }
{{ result.response.info?.name }} [{{ result.response.info?.vmid }}] @if (result.response.externalLink) { }
{{ t('State:') }} @if (result.response.info && result.response.current) { @if ('qmpstatus' in result.response.current) { @if (result.response.info.status !== result.response.current.qmpstatus) { {{ result.response.info.status }} ({{ result.response.current.qmpstatus }}) } @else { {{ result.response.info.status }} } } @else { {{ result.response.info.status }} } }
@if (result.response.current?.uptime) {

{{ t('Uptime') }} {{ result.response.current?.uptimeAgoInWords }}

}
@if (result.response.info?.status === 'running') { @if (result.response.agent && result.response.agent['pretty-name']) {
{{ t('Operating system') }}
@if (result.response.agent.id && result.response.agent.version) { @switch (result.response.agent.id) { @case ('ubuntu') { } @case ('debian') { } @case ('suse') { } @case ('mswindows') { } @default { {{ result.response.agent.name }} } } }

{{ result.response.agent['pretty-name'] }} [{{ result.response.agent.version }}]

} @if (result.response.current) {
{{ t('CPU') }}
{{ t('Cores') }}: {{ result.response.current.cpus }} @if (pendingChanges['cores']; as pc) { @if (pc.pending !== null && pc.pending !== undefined && !pc.delete) { {{ pc.pending }} } }

{{ result.response.current.cpu * 100| number: '1.3-3' }} %

@if (result.response.current.mem) {
{{ t('Memory') }}
{{ result.response.current.maxmem | byteToHuman }} @if (pendingMemoryBytes !== undefined) { {{ pendingMemoryBytes | byteToHuman }} }

{{ result.response.current.mem / result.response.current.maxmem * 100| number: '1.3-3' }} % ({{ result.response.current.mem | byteToHuman }} {{ t('of') }} {{ result.response.current.maxmem | byteToHuman }} )

} } }
@if (PermissionsService.hasPermissionObservable(['importmodule','proxmox', 'power_actions'])|async) { @if (allowEdit && vmid && nodeName) { } }
@if (hasPendingChanges) {
{{ t('Pending changes') }}

{{ t('The following configuration changes are pending and will be applied after the next restart of the virtual machine or container.') }}

@for (change of pendingChangesList; track change.key) { }
{{ t('Setting') }} {{ t('Current value') }} {{ t('Pending value') }}
{{ change.key }} @if (change.current !== null && change.current !== undefined) { {{ change.current }} } @else { - } @if (change.delete) { {{ t('Will be removed') }} } @else if (change.pending !== null && change.pending !== undefined) { {{ change.pending }} } @else { - }
} @if (vmid && nodeName) { }
{{ t('System') }}
@if (allowEdit && vmid && nodeName && ( this.PermissionsService.hasPermissionObservable(['ImportModule', 'proxmox', 'hardware'])|async )) { }
@if (result.response.current && result.response.current.ha) { {{ t('HA State') }} @if (result.response.current.ha.state) { ({{ result.response.current.ha.state }}) } @if (result.response.current.ha.managed) { } @else { } } @if (result.response.info?.node) { {{ t('Node') }} {{ result.response.info?.node }} } @if (result.response.current) { @if (result.response.current.cpu !== undefined && result.response.current.cpus) { {{ t('CPU usage') }} {{ result.response.current.cpu * 100| number: '1.3-3' }} % {{ t('of') }} {{ result.response.current.cpus }}{{ t('CPU(s)') }} @if (pendingChanges['cores']; as pc) { @if (pc.pending !== null && pc.pending !== undefined && !pc.delete) { {{ pc.pending }} {{ t('Cores') }} } } } @if (result.response.current.maxmem && result.response.current.mem) { {{ t('Memory usage') }} {{ result.response.current.mem / result.response.current.maxmem * 100| number: '1.3-3' }} % ({{ result.response.current.mem | byteToHuman }} {{ t('of') }} {{ result.response.current.maxmem | byteToHuman }} ) @if (pendingMemoryBytes !== undefined) { {{ pendingMemoryBytes | byteToHuman }} } } @if ('swap' in result.response.current && result.response.current.maxswap) { {{ t('SWAP usage') }} {{ result.response.current.swap / result.response.current.maxswap * 100| number: '1.3-3' }} % ({{ result.response.current.swap | byteToHuman }} {{ t('of') }} {{ result.response.current.maxswap | byteToHuman }} ) } @if ('memhost' in result.response.current && result.response.current.memhost) { {{ t('Host memory usage') }} {{ result.response.current.memhost | byteToHuman }} } @if ('maxdisk' in result.response.current && result.response.current.maxdisk) { {{ t('Bootdisk size') }} @if ('disk' in result.response.current) { {{ result.response.current.disk / result.response.current.maxdisk * 100| number: '1.3-3' }} % ({{ result.response.current.disk | byteToHuman }} {{ t('of') }} {{ result.response.current.maxdisk | byteToHuman }} ) } @else { {{ result.response.current.maxdisk | byteToHuman }} } @if ('disk' in result.response.current) { } } }
{{ t('Network information') }}
@if (result.response.ipaddresses) { {{ t('IPs') }} {{ t('Name') }} {{ t('MAC address') }} {{ t('IP address') }} @for (ipaddress of result.response.ipaddresses; track $index) { {{ ipaddress.name }} {{ ipaddress.hardware_address }}
    @for (ip of ipaddress.ip_address; track $index) {
  • {{ ip.ip_address }}
  • }
} }
@if (this.PermissionsService.hasPermissionObservable(['ImportModule', 'proxmox', 'snapshots'])|async) { @if (vmid && nodeName) { } } @if (allowEdit && vmid && nodeName && ( this.PermissionsService.hasPermissionObservable(['ImportModule', 'proxmox', 'hardware'])|async )) { } }