code: func resourceVSphereComputeClusterHostGroupFetchObjects(
  	meta interface{},
  	clusterID string,
  	name string,
  ) (*object.ClusterComputeResource, string, error) {
  	client, err := resourceVSphereComputeClusterHostGroupClient(meta)
  	if err != nil {
  		return nil, "", err
  	}
  
  	cluster, err := clustercomputeresource.FromID(client, clusterID)
  	if err != nil {
  		return nil, "", fmt.Errorf("cannot locate cluster: %s", err)
  	}
  
  	return cluster, name, nil
  }
docs: // resourceVSphereComputeClusterHostGroupFetchObjects fetches the "objects" for
  // a cluster host group. This is currently just the cluster object as the name
  // of the group is a static value and a pass-through - this is to keep its
  // workflow consistent with other cluster-dependent resources that derive from
  // ArrayUpdateSpec that have managed object as keys, such as VM and host
  // overrides.