remove legacy query interface
with the introduction of the api, the query interface is no longer needed.
#1 Updated by Brian Gupta over 7 years ago
- Assignee set to Brian Gupta
I want to make sure what needs to be done here. Are we looking at refactoring ssh_using_foreman, or foreman.rb (or both) to work with the API? Or maybe you are thinking we can just get rid of both since foremancli now can do everything it can?
#2 Updated by Brian Gupta over 7 years ago
Ohad, looking at the API docs, I'm not sure if there is a way to query the API for a list of hosts with certain puppetclasses http://theforeman.org/projects/foreman/wiki/API Am I missing something?
The other piece where you query for a list of hosts that match certain facts, seems to be implemented in the REST API as "/facts/<factname>/values"
However the ssh_using_foreman scriptallows ONE OR MORE facts in the query: "-f, --facts fact=x,fact=y.. one or more facts to filter the host list" I am not aware of how to do this in the API either.
#4 Updated by Brian Gupta over 7 years ago
I ended up using the GUI to generate a query, and tailed the production log to find how the searches are encoded, and found this as an example: https://foreman/hosts?search=+class++%3D++base%3A%3Amonitor-only++or++class++%3D++apache2%3A%3Agb
You don't have this more cleanly documented somewhere or a code example, do you?
#7 Updated by Brian Gupta over 7 years ago
- % Done changed from 0 to 10
There may be some weird behavior with "OR" that I think is a bug, but "AND" seems to be working. (For future reference the search I did that triggered the bug was facts.hostname=redmine or facts.hostname=dev1, I will be doing further testing and open a bug report.)
#10 Updated by Brian Gupta over 7 years ago
Reminder to update http://theforeman.org/projects/foreman/wiki/Query_Interface once we make these changes.