func (cmd *reconnect) Reconnect(ctx context.Context, host *object.HostSystem) error { task, err := host.Reconnect(ctx, &cmd.HostConnectSpec, &cmd.HostSystemReconnectSpec) if err != nil { return err } logger := cmd.ProgressLogger(fmt.Sprintf("%s reconnecting... ", host.InventoryPath)) defer logger.Wait() _, err = task.WaitForResult(ctx, logger) return err }