docs: def configure_host_cache(host_ref, datastore_ref, swap_size_MiB,
                           host_cache_manager=None):
      '''
      Configures the host cahe of the specified host
  
      host_ref
          The vim.HostSystem object representing the host that contains the
          requested disks.
  
      datastore_ref
          The vim.Datastore opject representing the datastore the host cache will
          be configured on.
  
      swap_size_MiB
          The size in Mibibytes of the swap.
  
      host_cache_manager
          The vim.HostCacheConfigurationManager object representing the cache
          configuration manager on the specified host. Default is None. If None,
          it will be retrieved in the method
      '''
      hostname = get_managed_object_name(host_ref)
      if not host_cache_manager:
          props = get_properties_of_managed_object(
              host_ref, ['configManager.cacheConfigurationManager'])
          if not props.get('configManager.cacheConfigurationManager'):
              raise salt.exceptions.VMwareObjectRetrievalError(
                  'Host \'{0}\' has no host cache'.format(hostname))
          host_cache_manager = props['configManager.cacheConfigurationManager']
      log.trace('Configuring the host cache on host \'%s\', datastore \'%s\', '
                'swap size=%s MiB', hostname, datastore_ref.name, swap_size_MiB)
  
      spec = vim.HostCacheConfigurationSpec(
          datastore=datastore_ref,
          swapSize=swap_size_MiB)
      log.trace('host_cache_spec=%s', spec)
      try:
          task = host_cache_manager.ConfigureHostCache_Task(spec)
      except vim.fault.NoPermission as exc:
          log.exception(exc)
          raise salt.exceptions.VMwareApiError(
              'Not enough permissions. Required privilege: '
              '{0}'.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)
      wait_for_task(task, hostname, 'HostCacheConfigurationTask')
      log.trace('Configured host cache on host \'%s\'', hostname)
      return True