code: func RenameObject(client *govmomi.Client, ref types.ManagedObjectReference, new string) error {
  	req := types.Rename_Task{
  		This:    ref,
  		NewName: new,
  	}
  
  	rctx, rcancel := context.WithTimeout(context.Background(), provider.DefaultAPITimeout)
  	defer rcancel()
  	res, err := methods.Rename_Task(rctx, client.Client, &req)
  	if err != nil {
  		return err
  	}
  
  	t := object.NewTask(client.Client, res.Returnval)
  	tctx, tcancel := context.WithTimeout(context.Background(), provider.DefaultAPITimeout)
  	defer tcancel()
  	return t.Wait(tctx)
  }
docs: // RenameObject renames a MO and tracks the task to make sure it completes.