Расположение результатов работы Tower / AWX в postgresql
Я пытаюсь получить STDOUT/STDERR задачи от Postgresql для использования в комментариях к коммиту.
У меня трудности с поиском подходящего стола. Кто-нибудь пытался получить конкретную задачу STDOUT/STDERR от Ansible Tower / AWX? Я лаю на правильное дерево?
3 ответа
Каждая задача имеет свой вывод в столбце stdout
стола main_jobevent
,
prepare awx (text, int) as
select job_id, host_name, modified, playbook, play, role, stdout
from main_jobevent
where host_name = ANY (string_to_array($1, ','))
and changed
order by modified desc
limit $2;
execute awx( 'localhost,192.168.1.1', 3 );
это показывает три самые младшие модификации хоста localhost или 192.168.1.1.
Используйте API Ansible Tower, чтобы получить стандартный вывод задания. Например: https:///api/v2/jobs//stdout/? Format=json
Проверьте документ API Ansible Tower https://docs.ansible.com/ansible-tower/3.2.4/pdf/AnsibleTowerAPIGuide.pdf
Согласно справочному руководству Tower API Jobs , можно получить полный журнал результатов задания через вызов REST API в виде обычного текста, например
curl --silent -u ${TOWER_USER}:${TOWER_PASSWORD} -JL https://${TOWER_URL}/api/v2/jobs/${JobID}/stdout?format=txt_download -o job_${JobID}.log
в результате получается файл с именем
job_${JobID}.log
. Но нет прямого обращения к конкретным задачам работы.
Как уже упоминалось в user27239 , можно было бы собрать конкретную информацию о задании с работы,
ответеJobID
SELECT job_id, host_name, modified, stdout
FROM main_jobevent
WHERE job_id = $1
ORDER BY modified ASC;
но это выглядит как цветной текст ANSI .