You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
the Job Output does not render DateTime labels for Tasks in Jobs running with Ansible strategies "free" or "host_pinned".
This would be less problematic, if the Event Details view would show DateTimes of an event row, but it does not.
This issue has been present with the "old" UI present in AWX 24.6.1 and before as well, but since there is neither an issue at ansible/awx nor here, I decided to open it here.
Used playbooks are ping-20.yml for linear and free-waiter.yml for free. Ansible version was 2.17 with ansible-runner 2.4.0.
As you can see, only linear has DateTime labels for task rows:
When inspecting the Event Detail modal, no DateTime label is shown as well, so we cannot see at all when an event did happen in a Job with free strategy.
Finding the cause for missing task DateTime labels
the event has either a play uuid or task uuid defined
it is a HeaderLine
When we look into the events stored for the example jobs, we see two relevant differences:
Event playbook_on_task_start only has stdout for linear playbooks, but not free
Event runner_on_ok has only host specific stdout (such as "ok: [hostname]") for linear but with free the missing task stdout from playbook_on_task_start is present as well
Hello together,
the Job Output does not render DateTime labels for Tasks in Jobs running with Ansible strategies "free" or "host_pinned".
This would be less problematic, if the Event Details view would show DateTimes of an event row, but it does not.
This issue has been present with the "old" UI present in AWX 24.6.1 and before as well, but since there is neither an issue at ansible/awx nor here, I decided to open it here.
Observed Behaviour
Example using public test playbooks:
Used playbooks are
ping-20.yml
for linear andfree-waiter.yml
for free. Ansible version was 2.17 with ansible-runner 2.4.0.As you can see, only linear has DateTime labels for task rows:
When inspecting the Event Detail modal, no DateTime label is shown as well, so we cannot see at all when an event did happen in a Job with free strategy.
Finding the cause for missing task DateTime labels
This seems to be due to logic found here:
ansible-ui/frontend/awx/views/jobs/JobOutput/JobOutputRow.tsx
Lines 89 to 93 in 298aac6
So a row must be a HeaderLine and collapsible to receive a DateTime label.
If its a HeaderLine is determined by this logic:
ansible-ui/frontend/awx/views/jobs/JobOutput/JobOutputRow.tsx
Lines 132 to 135 in 298aac6
So a row is a HeaderLine if it has stdout and there was no HeaderLine row yet.
If its collapsible is determined by this logic:
ansible-ui/frontend/awx/views/jobs/JobOutput/JobOutputRow.tsx
Lines 119 to 126 in 298aac6
As well as:
ansible-ui/frontend/awx/views/jobs/JobOutput/JobOutputRow.tsx
Line 147 in 298aac6
So a row is collapsible, if:
When we look into the events stored for the example jobs, we see two relevant differences:
playbook_on_task_start
only hasstdout
for linear playbooks, but not freerunner_on_ok
has only host specific stdout (such as "ok: [hostname]") for linear but with free the missing task stdout fromplaybook_on_task_start
is present as wellUsed ansible-ui version
The "Next UI" compiled into AWX 24.6.1 container image seems to have been built from the main branch of ansible-ui at release date, so 2024-07-02: https://github.com/ansible/awx/releases/tag/24.6.1
The main Branch of ansible-ui was then at commit 298aac6
The text was updated successfully, but these errors were encountered: