Source code for saltext.vcf.clients.vim_vm_tools

"""VMware Tools daemon control via SOAP."""

from saltext.vcf.clients.vim_vm import _vm


[docs] def get_tools_status(opts, vm_id_or_name, profile=None): """Return a snapshot of the VM's VMware Tools status. Keys: ``toolsStatus``, ``toolsVersionStatus``, ``toolsRunningStatus``, ``toolsInstallType``, ``toolsVersion``. """ vm = _vm(opts, vm_id_or_name, profile=profile) guest = vm.guest return { "toolsStatus": str(guest.toolsStatus) if guest.toolsStatus else None, "toolsVersionStatus": getattr(guest, "toolsVersionStatus2", None), "toolsRunningStatus": getattr(guest, "toolsRunningStatus", None), "toolsInstallType": getattr(guest, "toolsInstallType", None), "toolsVersion": getattr(guest, "toolsVersion", None), }
[docs] def upgrade_tools(opts, vm_id_or_name, installer_options="", profile=None): """Upgrade VMware Tools in-guest. Returns task moid.""" vm = _vm(opts, vm_id_or_name, profile=profile) task = vm.UpgradeTools_Task(installerOptions=installer_options) return task._moId # noqa: SLF001
[docs] def mount_tools_installer(opts, vm_id_or_name, profile=None): """Attach the VMware Tools installer CD-ROM. Synchronous.""" vm = _vm(opts, vm_id_or_name, profile=profile) vm.MountToolsInstaller() return True
[docs] def unmount_tools_installer(opts, vm_id_or_name, profile=None): """Detach the VMware Tools installer CD-ROM. Synchronous.""" vm = _vm(opts, vm_id_or_name, profile=profile) vm.UnmountToolsInstaller() return True