func addStandaloneHost(folder *object.Folder, spec types.HostConnectSpec) (*object.Task, error) { // TODO: add govmomi wrapper req := types.AddStandaloneHost_Task{ This: folder.Reference(), Spec: spec, AddConnected: true, } res, err := methods.AddStandaloneHost_Task(context.TODO(), folder.Client(), &req) if err != nil { return nil, err } task := object.NewTask(folder.Client(), res.Returnval) return task, nil }
func (cmd *add) Add(ctx context.Context, parent *object.Folder) error { spec := cmd.HostConnectSpec req := types.AddStandaloneHost_Task{ This: parent.Reference(), Spec: spec, AddConnected: cmd.connect, } res, err := methods.AddStandaloneHost_Task(ctx, parent.Client(), &req) if err != nil { return err } logger := cmd.ProgressLogger(fmt.Sprintf("adding %s to folder %s... ", spec.HostName, parent.InventoryPath)) defer logger.Wait() task := object.NewTask(parent.Client(), res.Returnval) _, err = task.WaitForResult(ctx, logger) return err }