docs: def power_cycle_vm(virtual_machine, action='on'):
      '''
      Powers on/off a virtual machine specified by it's name.
  
      virtual_machine
          vim.VirtualMachine object to power on/off virtual machine
  
      action
          Operation option to power on/off the machine
      '''
      if action == 'on':
          try:
              task = virtual_machine.PowerOn()
              task_name = 'power on'
          except vim.fault.NoPermission as exc:
              log.exception(exc)
              raise salt.exceptions.VMwareApiError(
                  'Not enough permissions. Required privilege: '
                  '{}'.format(exc.privilegeId))
          except vim.fault.VimFault as exc:
              log.exception(exc)
              raise salt.exceptions.VMwareApiError(exc.msg)
          except vmodl.RuntimeFault as exc:
              log.exception(exc)
              raise salt.exceptions.VMwareRuntimeError(exc.msg)
      elif action == 'off':
          try:
              task = virtual_machine.PowerOff()
              task_name = 'power off'
          except vim.fault.NoPermission as exc:
              log.exception(exc)
              raise salt.exceptions.VMwareApiError(
                  'Not enough permissions. Required privilege: '
                  '{}'.format(exc.privilegeId))
          except vim.fault.VimFault as exc:
              log.exception(exc)
              raise salt.exceptions.VMwareApiError(exc.msg)
          except vmodl.RuntimeFault as exc:
              log.exception(exc)
              raise salt.exceptions.VMwareRuntimeError(exc.msg)
      else:
          raise salt.exceptions.ArgumentValueError('The given action is not supported')
      try:
          wait_for_task(task, get_managed_object_name(virtual_machine), task_name)
      except salt.exceptions.VMwareFileNotFoundError as exc:
          raise salt.exceptions.VMwarePowerOnError(' '.join([
              'An error occurred during power',
              'operation, a file was not found: {0}'.format(exc)]))
      return virtual_machine