service auth, edit and delete now all support --service flag

If a service name is given, this will be used. If not the user is
prompted to select one.
This commit is contained in:
Philipp Wolfer 2023-12-09 22:59:33 +01:00
parent c21715d36b
commit 9449a29fb1
No known key found for this signature in database
GPG key ID: 8FDF744D4919943B
9 changed files with 29 additions and 51 deletions

View file

@ -21,12 +21,20 @@ import (
"slices"
"github.com/manifoldco/promptui"
"github.com/spf13/cobra"
"go.uploadedlobster.com/scotty/internal/backends"
"go.uploadedlobster.com/scotty/internal/config"
"go.uploadedlobster.com/scotty/internal/i18n"
)
func SelectService() (config.ServiceConfig, error) {
func SelectService(cmd *cobra.Command) (config.ServiceConfig, error) {
// First try to load service from command line flag
service, err := GetServiceConfigFromFlag(cmd, "service")
if err == nil {
return service, nil
}
// Prompt the user to select a service
services := config.AllServicesAsList()
if len(services) == 0 {
err := errors.New(i18n.Tr("no existing service configurations"))