package main

import (
	"fmt"

	"github.com/urfave/cli/v2"
)

var copySimCommand = &cli.Command{
	Name:      "copy",
	ArgsUsage: "<new-name>",
	Action: func(cctx *cli.Context) (err error) {
		node, err := open(cctx)
		if err != nil {
			return err
		}
		defer func() {
			if cerr := node.Close(); err == nil {
				err = cerr
			}
		}()
		if cctx.NArg() != 1 {
			return fmt.Errorf("expected 1 argument")
		}
		name := cctx.Args().First()
		return node.CopySim(cctx.Context, cctx.String("simulation"), name)
	},
}