WIP: status lookup for apps listing

This commit is contained in:
2021-07-26 20:59:17 +02:00
parent 2c83113040
commit 3bc612c44e
2 changed files with 27 additions and 4 deletions

View File

@ -52,23 +52,38 @@ var appRestoreCommand = &cli.Command{
var appListCommand = &cli.Command{
Name: "list",
Aliases: []string{"ls"},
Flags: []cli.Flag{StatusFlag, ServerFlag, TypeFlag}, // FIXME: implement flags
Flags: []cli.Flag{StatusFlag, ServerFlag, TypeFlag},
Action: func(c *cli.Context) error {
appFiles, err := config.LoadAppFiles(Server)
if err != nil {
logrus.Fatal(err)
}
apps, err := config.GetApps(appFiles)
sort.Sort(config.ByServerAndType(apps))
tableCol := []string{"Server", "Type", "Domain"}
if Status {
tableCol = []string{"Server", "Type", "Domain", "Status"}
}
table := createTable(tableCol)
table.SetAutoMergeCellsByColumnIndex([]int{0})
apps, err := config.GetApps(appFiles)
sort.Sort(config.ByServerAndType(apps))
for _, app := range apps {
var tableRow []string
if app.Type == Type || Type == "" {
// If type flag is set, check for it, if not, Type == ""
table.Append([]string{app.File.Server, app.Type, app.Domain})
tableRow = []string{app.File.Server, app.Type, app.Domain}
}
if Status {
status, err := app.GetStatus()
if err != nil {
logrus.Fatal(err)
}
tableRow = []string{app.File.Server, app.Type, app.Domain, status}
}
table.Append(tableRow)
}
table.Render()
return nil
},