junit – write playbook output to a JUnit file

Synopsis

  • This callback writes playbook output to a JUnit formatted XML file.

  • Tasks show up in the report as follows: ‘ok’: pass ‘failed’ with ‘EXPECTED FAILURE’ in the task name: pass ‘failed’ with ‘TOGGLE RESULT’ in the task name: pass ‘ok’ with ‘TOGGLE RESULT’ in the task name: failure ‘failed’ due to an exception: error ‘failed’ for other reasons: failure ‘skipped’: skipped

Requirements

The below requirements are needed on the local master node that executes this callback.

  • whitelist in configuration

  • junit_xml (python lib)

Parameters

Parameter Choices/Defaults Configuration Comments
fail_on_change
-
Default:
"no"
env:JUNIT_FAIL_ON_CHANGE
Consider any tasks reporting "changed" as a junit test failure
fail_on_ignore
-
Default:
"no"
env:JUNIT_FAIL_ON_IGNORE
Consider failed tasks as a junit test failure even if ignore_on_error is set
hide_task_arguments
-
added in 2.8
Default:
"no"
env:JUNIT_HIDE_TASK_ARGUMENTS
Hide the arguments for a task
include_setup_tasks_in_report
-
Default:
"yes"
env:JUNIT_INCLUDE_SETUP_TASKS_IN_REPORT
Should the setup tasks be included in the final report
output_dir
-
Default:
"~/.ansible.log"
env:JUNIT_OUTPUT_DIR
Directory to write XML files to.
replace_out_of_tree_path
-
Default:
"none"
env:JUNIT_REPLACE_OUT_OF_TREE_PATH
Replace the directory portion of an out-of-tree relative task path with the given placeholder
task_class
-
Default:
"no"
env:JUNIT_TASK_CLASS
Configure the output to be one class per yaml file
task_relative_path
-
added in 2.8
Default:
"none"
env:JUNIT_TASK_RELATIVE_PATH
Configure the output to use relative paths to given directory
test_case_prefix
-
added in 2.8
Default:
"\u003cempty\u003e"
env:JUNIT_TEST_CASE_PREFIX
Consider a task only as test case if it has this value as prefix. Additionaly failing tasks are recorded as failed test cases.

Status

Authors

  • UNKNOWN

Hint

If you notice any issues in this documentation, you can edit this document to improve it.

Hint

Configuration entries for each entry type have a low to high priority order. For example, a variable that is lower in the list will override a variable that is higher up.