move list function to separate function

This commit is contained in:
Adora Laura Kalb 2023-06-22 13:10:30 +02:00
parent 923c718e28
commit 4d280fc40f
Signed by: adoralaura
GPG key ID: 7A4552166FC8C056

View file

@ -4,55 +4,60 @@ Copyright © 2023 Laura Kalb <dev@lauka.net>
package cmd
import (
"codeberg.org/lauralani/ovh-apikey-manager/app"
"fmt"
"github.com/spf13/cobra"
"github.com/spf13/viper"
"log"
"os"
"strconv"
"codeberg.org/lauralani/ovh-apikey-manager/app"
"github.com/spf13/cobra"
"github.com/spf13/viper"
)
// listCmd represents the list command
var listCmd = &cobra.Command{
Use: "list",
Short: "List all active API Keys",
Long: `Lists all of your currently active API Keys`,
Run: func(cmd *cobra.Command, args []string) {
client := app.GetOVHClient()
var applist []app.Application
Use: "list",
Short: "List all active API Keys",
Long: `Lists all of your currently active API Keys`,
Run: runList,
Args: cobra.NoArgs,
Example: "ovh-apikey-manager delete",
}
var appresponselist []int
err := client.Get("/me/api/application", &appresponselist)
func runList(cmd *cobra.Command, args []string) {
client := app.GetOVHClient()
var applist []app.Application
var appresponselist []int
err := client.Get("/me/api/application", &appresponselist)
if err != nil {
log.Printf("Error getting application list: %q\n", err)
os.Exit(1)
}
for _, appid := range appresponselist {
var application app.Application
err := client.Get("/me/api/application/"+strconv.Itoa(appid), &application)
if err != nil {
log.Printf("Error getting application list: %q\n", err)
log.Printf("Error getting application %v: %v", appid, err.Error())
os.Exit(1)
}
for _, appid := range appresponselist {
var application app.Application
applist = append(applist, application)
}
err := client.Get("/me/api/application/"+strconv.Itoa(appid), &application)
if err != nil {
log.Printf("Error getting application %v: %v", appid, err.Error())
os.Exit(1)
}
fmt.Println("List of current API-Keys:")
fmt.Println("Format: ID: [status] name (description)")
fmt.Printf("\"*\" shows API key used by this application\n\n")
applist = append(applist, application)
for _, item := range applist {
iscurrentkey := " "
if item.ApplicationKey == viper.GetString("OVH_APPLICATIONKEY") {
iscurrentkey = "* "
}
fmt.Println("List of current API-Keys:")
fmt.Println("Format: ID: [status] name (description)")
fmt.Printf("\"*\" shows API key used by this application\n\n")
for _, item := range applist {
iscurrentkey := " "
if item.ApplicationKey == viper.GetString("OVH_APPLICATIONKEY") {
iscurrentkey = "* "
}
fmt.Printf("%v%v: [%v] %v (%v)\n", iscurrentkey, item.ApplicationID, item.Status, item.Name, item.Description)
}
},
fmt.Printf("%v%v: [%v] %v (%v)\n", iscurrentkey, item.ApplicationID, item.Status, item.Name, item.Description)
}
}
func init() {