in cli/cmd/ls.go [34:94]
func ls(cmd *cobra.Command, args []string) {
if Project == "" {
altProjectSources()
}
filterQuery := make(map[string]string, 0)
for _, param := range stackFilter {
vals := strings.Split(param, "=")
if len(vals) == 2 {
key := vals[0]
if !strings.HasPrefix(key, "latestOperation") {
key = strings.ToLower(vals[0])
if key == "initiator" {
key = "latestOperation.initiator"
}
}
filterQuery[key] = vals[1]
}
}
req, err := NewRequest()
if err != nil {
fmt.Printf("Error: %s", err)
return
}
resp, err := req.
SetQueryParams(filterQuery).
Get(baseURL())
if err != nil {
fmt.Printf("Error: %s", err)
return
}
if resp.IsSuccess() {
if Out == JsonO {
var pretty bytes.Buffer
err = json.Indent(&pretty, resp.Body(), "", "\t")
if err != nil {
fmt.Printf("Failed indent json body: %s", err)
return
}
fmt.Println(pretty.String())
return
}
var states []State
json.Unmarshal(resp.Body(), &states)
limit := 20
if len(states) < limit {
limit = len(states)
}
if len(states) > 0 {
tableFmtStates(states[:limit])
return
}
fmt.Println("Nothing has been found")
return
}
fmt.Printf("Error: %s", resp.Status())
return
}