Actions
Bug #20742
closedHost reports command is dysfunctional
Status:
Closed
Priority:
High
Assignee:
Category:
Reporting
Target version:
Difficulty:
Triaged:
Bugzilla link:
Team Backlog:
Description
hammer host reports allow specifying the host by either --id or --name. None of the methods actually work.
Using --name
Ends up with 400 error
> hammer host reports --name sandy-oberdorf.tstracho-laptop Error: 400 Bad Request
caused by:
[ INFO 2017-08-25 12:27:34 API] GET /api/reports [DEBUG 2017-08-25 12:27:34 API] Params: { :search => "name = \"sandy-oberdorf.tstracho-laptop\"" } [DEBUG 2017-08-25 12:27:34 API] Headers: { :params => { :search => "name = \"sandy-oberdorf.tstracho-laptop\"" } } [ERROR 2017-08-25 12:27:34 API] 400 Bad Request [DEBUG 2017-08-25 12:27:34 API] { "error" => { "message" => "Field 'name' not recognized for searching!", "class" => "ScopedSearch::QueryNotSupported" } }
Using --id
Returns empty list
hammer host reports --id 13 ---|------|-------------|---------|-----------|--------|------------------|---------|-------- ID | HOST | LAST REPORT | APPLIED | RESTARTED | FAILED | RESTART FAILURES | SKIPPED | PENDING ---|------|-------------|---------|-----------|--------|------------------|---------|--------
which is caused by wrong search condition:
[ INFO 2017-08-25 12:54:59 API] GET /api/reports [DEBUG 2017-08-25 12:54:59 API] Params: { "page" => 1, "per_page" => 1000, "id" => "13", "host_id" => "13" } [DEBUG 2017-08-25 12:54:59 API] Headers: { :params => { "page" => 1, "per_page" => 1000, "id" => "13", "host_id" => "13" } } [DEBUG 2017-08-25 12:54:59 API] Using authenticator: HammerCLIForeman::Api::SessionAuthenticatorWrapper [DEBUG 2017-08-25 12:54:59 API] Response: { "total" => 135, "subtotal" => 0, "page" => 1, "per_page" => 1000, "search" => " host = 13", "sort" => { "by" => nil, "order" => nil }, "results" => [] }
Note that searching by "host = <HOSTNAME>" would work as intended (tested in the UI).
The fix should be quite simple: modify the command to use "host = X" or "host.id = X" search query according to what parameters were used.
Actions