package server

import (
	"fmt"

	"coopcloud.tech/abra/client"
	"github.com/sirupsen/logrus"
	"github.com/urfave/cli/v2"
)

var serverAddCommand = &cli.Command{
	Name:        "add",
	Usage:       "Add a new server, reachable on <host>.",
	ArgsUsage:   "<host> [<user>] [<port>]",
	Description: "[<user>], [<port>]    SSH connection details",
	Action: func(c *cli.Context) error {
		argLen := c.Args().Len()
		args := c.Args().Slice()
		if argLen < 3 {
			args = append(args, make([]string, 3-argLen)...)
		}
		if err := client.CreateContext(args[0], args[1], args[2]); err != nil {
			logrus.Fatal(err)
		}
		fmt.Println(args[0])
		return nil
	},
}