Hacemos algún uso de los parámetros globales en Foreman y necesito enumerar todos los hosts que tienen el parámetro global foo
establecido en " bar
".
¿Puedo hacerlo con la API REST o mediante algún otro método? Pasando por ellista de llamadas API, No encuentro nada aplicable. ¿Hay esperanza?
Alternativamente, Estoy pensando en crear una clase Puppet especial, que no hará más que reformular los parámetros globales como sus propias variables. Al convertirlo en unrecurso exportado, es posible que pueda recopilar los datos de todos los hosts... Sin embargo, parece desagradable: ¿hay una manera mejor?
Respuesta1
¿Puedo hacerlo con la API REST o mediante algún otro método? Al revisar la lista de llamadas API, no encuentro nada aplicable. ¿Hay esperanza?
Quieres GET /api/v2/hosts
(documento API) para recuperar una lista de hosts y luego agregue el search
parámetro para filtrar el resultado.
Se utiliza search=params.foo=bar
para filtrar por el foo
parámetro. Puede encontrar otras cadenas de búsqueda a través del autocompletado de búsqueda de la interfaz de usuario (es exactamente la misma sintaxis) y encontrará más información enManual del capataz: Búsqueda.
Entonces, la URL completa para consultar sería algo como:
https://foreman.example.com/api/v2/hosts?search=params.foo=bar