.. _ansible.utils.validate_module: ********************** ansible.utils.validate ********************** **Validate data with provided criteria** Version added: 1.0.0 .. contents:: :local: :depth: 1 Synopsis -------- - Validate data with provided criteria based on the validation engine. Parameters ---------- .. raw:: html
Parameter Choices/Defaults Comments
criteria
raw / required
The criteria used for validation of data. For the type of criteria refer to the documentation of individual validate plugins.
data
raw / required
Data that will be validated against criteria. For the type of data refer to the documentation of individual validate plugins.
engine
string
Default:
"ansible.utils.jsonschema"
The name of the validate plugin to use. The engine value should follow the fully qualified collection name format, that is <org-name>.<collection-name>.<validate-plugin-name>.

Notes ----- .. note:: - For the type of options *data* and *criteria* refer to the individual validate plugin documentation that is represented in the value of *engine* option. - For additional plugin configuration options refer to the individual validate plugin documentation that is represented by the value of *engine* option. - The plugin configuration option can be either passed as task or environment variables. - The precedence of the validate plugin configurable option is task variables followed by the environment variables. Examples -------- .. code-block:: yaml - name: set facts for data and criteria ansible.builtin.set_fact: data: "{{ lookup('ansible.builtin.file', './validate/data/show_interfaces_iosxr.json') }}" criteria: "{{ lookup('ansible.builtin.file', './validate/criteria/jsonschema/show_interfaces_iosxr.json') }}" - name: validate data in with jsonschema engine (by passing task vars as configurable plugin options) ansible.utils.validate: data: "{{ data }}" criteria: "{{ criteria }}" engine: ansible.utils.jsonschema vars: ansible_jsonschema_draft: draft7 - name: validate configuration with config plugin (see config plugin for criteria examples) ansible.utils.validate: data: "{{ lookup('ansible.builtin.file', './backup/eos.config') }}" criteria: "{{ lookup('ansible.builtin.file', './validate/criteria/config/eos_config_rules.yaml') }}" engine: ansible.utils.config Return Values ------------- Common return values are documented `here `_, the following are the fields unique to this module: .. raw:: html
Key Returned Description
errors
list / elements=string
when data value is invalid
The list of errors in data based on the criteria.

msg
string
always
The msg indicates if the data is valid as per the criteria.
In case data is valid return success message all checks passed.
In case data is invalid return error message Validation errors were found along with more information on error is available.



Status ------ Authors ~~~~~~~ - Bradley Thornton (@cidrblock) - Ganesh Nalawade (@ganeshrn)