コード例 #1
0
ファイル: create.go プロジェクト: kristinn/govmomi
func (cmd *create) Run(f *flag.FlagSet) error {
	ctx := context.TODO()
	var parent *object.Folder

	if f.NArg() != 1 {
		return flag.ErrHelp
	}

	if cmd.parent == "" {
		dc, err := cmd.Datacenter()
		if err != nil {
			return err
		}

		folders, err := dc.Folders(ctx)
		if err != nil {
			return err
		}

		parent = folders.HostFolder
	} else {
		finder, err := cmd.Finder()
		if err != nil {
			return err
		}

		parent, err = finder.Folder(ctx, cmd.parent)
		if err != nil {
			return err
		}
	}

	_, err := parent.CreateCluster(ctx, f.Arg(0), cmd.ClusterConfigSpecEx)
	if err != nil {
		return err
	}

	return nil
}