package internal

import (
	"os"

	"coopcloud.tech/abra/pkg/log"
	"github.com/urfave/cli/v3"
)

// ShowSubcommandHelpAndError exits the program on error, logs the error to the
// terminal, and shows the help command.
func ShowSubcommandHelpAndError(cmd *cli.Command, err interface{}) {
	if err2 := cli.ShowSubcommandHelp(cmd); err2 != nil {
		log.Error(err2)
	}
	log.Error(err)
	os.Exit(1)
}
