diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 0000000..2b160a7 --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,20 @@ +--- +repos: + - repo: https://github.com/pre-commit/pre-commit-hooks + rev: v3.1.0 + hooks: + - id: check-merge-conflict + - id: debug-statements + - id: end-of-file-fixer + - id: no-commit-to-branch + args: [--branch, main] + - id: trailing-whitespace + - repo: https://github.com/psf/black + rev: 19.3b0 + hooks: + - id: black + args: [-l, "79"] + - repo: https://github.com/ansible-network/collection_prep + rev: 0.9.1 + hooks: + - id: update-docs diff --git a/README.md b/README.md index 80494ed..45001d5 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ The Ansible ``ansible.utils`` collection includes a variety of plugins that aid ## Ansible version compatibility -This collection has been tested against following Ansible versions: **>=2.9.10,<2.11**. +This collection has been tested against following Ansible versions: **>=2.9.10**. Plugins and modules within a collection may be tested with only specific Ansible versions. A collection may contain metadata that identifies these versions. @@ -47,11 +47,6 @@ Name | Description --- | --- [ansible.utils.validate](https://github.com/ansible-collections/ansible.utils/blob/main/docs/ansible.utils.validate_test.rst)|Validate data with provided criteria -### Validate plugins -Name | Description ---- | --- -[ansible.utils.jsonschema](https://github.com/ansible-collections/ansible.utils/blob/main/docs/ansible.utils.jsonschema_validate.rst)|Define configurable options for jsonschema validate plugin - ## Installing this collection diff --git a/docs/ansible.utils.cli_parse_module.rst b/docs/ansible.utils.cli_parse_module.rst index 162f404..08e7053 100644 --- a/docs/ansible.utils.cli_parse_module.rst +++ b/docs/ansible.utils.cli_parse_module.rst @@ -438,6 +438,7 @@ Common return values are documented `here
list + / elements=string
when provided a command diff --git a/docs/ansible.utils.fact_diff_module.rst b/docs/ansible.utils.fact_diff_module.rst index 4aa9f30..c225952 100644 --- a/docs/ansible.utils.fact_diff_module.rst +++ b/docs/ansible.utils.fact_diff_module.rst @@ -124,6 +124,7 @@ Parameters
list + / elements=string
@@ -298,11 +299,12 @@ Common return values are documented `here
list + / elements=string
always -
The diff_text split into lines.
+
The diff_text split into lines.

diff --git a/docs/ansible.utils.get_path_filter.rst b/docs/ansible.utils.get_path_filter.rst index 0bbfe55..0708cd1 100644 --- a/docs/ansible.utils.get_path_filter.rst +++ b/docs/ansible.utils.get_path_filter.rst @@ -17,8 +17,8 @@ Version added: 1.0.0 Synopsis -------- -- Use a ``path`` to retrieve a nested value from a ``var``. -- ``get_path`` is also available as a ``lookup plugin`` for convenience. +- Use a *path* to retrieve a nested value from a *var*. +- **get_path** is also available as a **lookup plugin** for convenience. - Using the parameters below- ``var|ansible.utils.get_path(path, wantlist``) @@ -51,8 +51,8 @@ Parameters -
The path in the var to retrieve the value of.
-
The path needs to be a valid jinja path.
+
The path in the var to retrieve the value of.
+
The path needs to be a valid jinja path.
@@ -72,7 +72,7 @@ Parameters
The variable from which the value should be extracted.
This option represents the value that is passed to the filter plugin in pipe format.
-
For example config_data|ansible.utils.get_path(), in this case config_data represents this option.
+
For example config_data|ansible.utils.get_path(), in this case config_data represents this option.
diff --git a/docs/ansible.utils.get_path_lookup.rst b/docs/ansible.utils.get_path_lookup.rst index ec39727..ed6a3b7 100644 --- a/docs/ansible.utils.get_path_lookup.rst +++ b/docs/ansible.utils.get_path_lookup.rst @@ -17,8 +17,8 @@ Version added: 1.0.0 Synopsis -------- -- Use a ``path`` to retrieve a nested value from a ``var`` -- ``get_path`` is also available as a ``filter plugin`` for convenience +- Use a *path* to retrieve a nested value from a *var* +- **get_path** is also available as a **filter plugin** for convenience - Using the parameters below- ``lookup('ansible.utils.get_path', var, path, wantlist``) @@ -51,7 +51,7 @@ Parameters -
The path in the var to retrieve the value of. The path needs to a be a valid jinja path.
+
The path in the var to retrieve the value of. The path needs to a be a valid jinja path.
diff --git a/docs/ansible.utils.index_of_filter.rst b/docs/ansible.utils.index_of_filter.rst index 2e3135b..491ebc1 100644 --- a/docs/ansible.utils.index_of_filter.rst +++ b/docs/ansible.utils.index_of_filter.rst @@ -19,7 +19,7 @@ Synopsis -------- - This plugin returns the indices of items matching some criteria in a list. - When working with a list of dictionaries, the key to evaluate can be specified. -- ``index_of`` is also available as a ``lookup plugin`` for convenience. +- **index_of** is also available as a **lookup plugin** for convenience. - Using the parameters below- ``data|ansible.utils.index_of(test, value, key, fail_on_missing, wantlist``) @@ -54,7 +54,7 @@ Parameters
A list of items to enumerate and test against.
This option represents the value that is passed to the filter plugin in pipe format.
-
For example config_data|ansible.utils.index_of('x'), in this case config_data represents this option.
+
For example config_data|ansible.utils.index_of('x'), in this case config_data represents this option.
@@ -93,8 +93,8 @@ Parameters
When the data provided is a list of dictionaries, run the test against this dictionary key.
-
When using a key, the data must only contain dictionaries.
-
See fail_on_missing below to determine the behavior when the key is missing from a dictionary in the data.
+
When using a key, the data must only contain dictionaries.
+
See fail_on_missing below to determine the behavior when the key is missing from a dictionary in the data.
@@ -154,7 +154,7 @@ Parameters -
When only a single entry in the data is matched, the index of that entry is returned as an integer.
+
When only a single entry in the data is matched, the index of that entry is returned as an integer.
If set to True, the return value will always be a list, even if only a single entry is matched.
diff --git a/docs/ansible.utils.index_of_lookup.rst b/docs/ansible.utils.index_of_lookup.rst index 00d8060..13200ba 100644 --- a/docs/ansible.utils.index_of_lookup.rst +++ b/docs/ansible.utils.index_of_lookup.rst @@ -19,7 +19,7 @@ Synopsis -------- - This plugin returns the indices of items matching some criteria in a list. - When working with a list of dictionaries, the key to evaluate can be specified. -- ``index_of`` is also available as a ``filter plugin`` for convenience. +- **index_of** is also available as a **filter plugin** for convenience. - Using the parameters below- ``lookup('ansible.utils.index_of', data, test, value, key, fail_on_missing, wantlist``). @@ -90,7 +90,7 @@ Parameters -
When the data provided is a list of dictionaries, run the test against this dictionary key. When using a key, the data must only contain dictionaries. See fail_on_missing below to determine the behaviour when the key is missing from a dictionary in the data.
+
When the data provided is a list of dictionaries, run the test against this dictionary key. When using a key, the data must only contain dictionaries. See fail_on_missing below to determine the behaviour when the key is missing from a dictionary in the data.
@@ -125,7 +125,7 @@ Parameters -
The value used to test each list item against. Not required for simple tests (eg: true, false, even, odd) May be a string, boolean, number, regular expression dict and so on, depending on the test used.
+
The value used to test each list item against. Not required for simple tests (eg: true, false, even, odd) May be a string, boolean, number, regular expression dict and so on, depending on the test used.
@@ -146,7 +146,7 @@ Parameters -
When only a single entry in the data is matched, the index of that entry is returned as an integer. If set to True, the return value will always be a list, even if only a single entry is matched. This can also be accomplished using query or q instead of lookup. https://docs.ansible.com/ansible/latest/plugins/lookup.html
+
When only a single entry in the data is matched, the index of that entry is returned as an integer. If set to True, the return value will always be a list, even if only a single entry is matched. This can also be accomplished using query or q instead of lookup. https://docs.ansible.com/ansible/latest/plugins/lookup.html
diff --git a/docs/ansible.utils.jsonschema_validate.rst b/docs/ansible.utils.jsonschema_validate.rst deleted file mode 100644 index c3ab581..0000000 --- a/docs/ansible.utils.jsonschema_validate.rst +++ /dev/null @@ -1,90 +0,0 @@ -.. _ansible.utils.jsonschema_validate: - - -************************ -ansible.utils.jsonschema -************************ - -**Define configurable options for jsonschema validate plugin** - - -Version added: 1.0.0 - -.. contents:: - :local: - :depth: 1 - - -Synopsis --------- -- This plugin documentation provides the configurable options that can be passed to the validate plugins when *ansible.utils.json* is used as a value for engine option. - - - - -Parameters ----------- - -.. raw:: html - - - - - - - - - - - - - - -
ParameterChoices/DefaultsConfigurationComments
-
- draft - -
- - -
-
-
    Choices: -
  • draft3
  • -
  • draft4
  • -
  • draft6
  • -
  • draft7 ←
  • -
-
-
env:ANSIBLE_VALIDATE_JSONSCHEMA_DRAFT
-
var: ansible_validate_jsonschema_draft
-
-
This option provides the jsonschema specification that should be used for the validating the data. The criteria option in the validate plugin should follow the specifiaction as mentined by this option
-
-
- - -Notes ------ - -.. note:: - - The value of ``data`` option should be either of type *dict* or *strings* which should be a valid *dict* when read in python. - - The value of ``criteria`` should be *list* of *dict* or *list* of *strings* and each *string* within the *list* entry should be a valid *dict* when read in python. - - - - - - - -Status ------- - - -Authors -~~~~~~~ - -- Ganesh Nalawade (@ganeshrn) - - -.. 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. diff --git a/docs/ansible.utils.to_paths_filter.rst b/docs/ansible.utils.to_paths_filter.rst index ae6c740..d9fc831 100644 --- a/docs/ansible.utils.to_paths_filter.rst +++ b/docs/ansible.utils.to_paths_filter.rst @@ -20,7 +20,7 @@ Synopsis - Flatten a complex object into a dictionary of paths and values. - Paths are dot delimited whenever possible. - Brackets are used for list indices and keys that contain special characters. -- ``to_paths`` is also available as a ``lookup plugin`` for convenience. +- **to_paths** is also available as a **lookup plugin** for convenience. - Using the parameters below- ``var|ansible.utils.to_paths(prepend, wantlist``) @@ -52,7 +52,7 @@ Parameters -
Prepend each path entry. Useful to add the initial var name.
+
Prepend each path entry. Useful to add the initial var name.
@@ -70,9 +70,9 @@ Parameters -
The value of var will be will be used.
+
The value of var will be will be used.
This option represents the value that is passed to the filter plugin in pipe format.
-
For example config_data|ansible.utils.to_paths(), in this case config_data represents this option.
+
For example config_data|ansible.utils.to_paths(), in this case config_data represents this option.
diff --git a/docs/ansible.utils.to_paths_lookup.rst b/docs/ansible.utils.to_paths_lookup.rst index 7d7fde2..3d42e43 100644 --- a/docs/ansible.utils.to_paths_lookup.rst +++ b/docs/ansible.utils.to_paths_lookup.rst @@ -20,7 +20,7 @@ Synopsis - Flatten a complex object into a dictionary of paths and values. - Paths are dot delimited whenever possible. - Brackets are used for list indices and keys that contain special characters. -- ``to_paths`` is also available as a filter plugin. +- **to_paths** is also available as a filter plugin. - Using the parameters below- ``lookup('ansible.utils.to_paths', var, prepend, wantlist``) @@ -52,7 +52,7 @@ Parameters -
Prepend each path entry. Useful to add the initial var name.
+
Prepend each path entry. Useful to add the initial var name.
@@ -70,7 +70,7 @@ Parameters -
The value of var will be will be used.
+
The value of var will be used.
@@ -91,7 +91,7 @@ Parameters -
If set to True, the return value will always be a list. This can also be accomplished using query or q instead of lookup. https://docs.ansible.com/ansible/latest/plugins/lookup.html
+
If set to True, the return value will always be a list. This can also be accomplished using query or q instead of lookup. https://docs.ansible.com/ansible/latest/plugins/lookup.html
diff --git a/docs/ansible.utils.validate_filter.rst b/docs/ansible.utils.validate_filter.rst index 2fd99d1..91b5b16 100644 --- a/docs/ansible.utils.validate_filter.rst +++ b/docs/ansible.utils.validate_filter.rst @@ -17,7 +17,7 @@ Version added: 1.0.0 Synopsis -------- -- Validate ``data`` with provided ``criteria`` based on the validation ``engine``. +- Validate *data* with provided *criteria* based on the validation *engine*. @@ -49,9 +49,9 @@ Parameters -
The criteria used for validation of value that represents data options.
-
This option represents the first argument passed in the filter plugin. For example config_data|ansible.utils.validate(config_criteria), in this case the value of config_criteria represents this option.
-
For the type of criteria that represents this value refer to the documentation of individual validator plugins.
+
The criteria used for validation of value that represents data options.
+
This option represents the first argument passed in the filter plugin. For example config_data|ansible.utils.validate(config_criteria), in this case the value of config_criteria represents this option.
+
For the type of criteria that represents this value refer to the documentation of individual validator plugins.
@@ -69,9 +69,9 @@ Parameters -
Data that will be validated against criteria.
-
This option represents the value that is passed to the filter plugin in pipe format. For example config_data|ansible.utils.validate(), in this case config_data represents this option.
-
For the type of data that represents this value refer to the documentation of individual validator plugins.
+
Data that will be validated against criteria.
+
This option represents the value that is passed to the filter plugin in pipe format. For example config_data|ansible.utils.validate(), in this case config_data represents this option.
+
For the type of data that represents this value refer to the documentation of individual validator plugins.
@@ -90,8 +90,8 @@ Parameters
The name of the validator plugin to use.
-
This option can be passed in lookup plugin as a key, value pair. For example config_data|ansible.utils.validate(config_criteria, engine='ansible.utils.jsonschema'), in this case the value ansible.utils.jsonschema represents the engine to be use for data validation. If the value is not provided the default value that is ansible.uitls.jsonschema will be used.
-
The value should be in fully qualified collection name format that is <org-name>.<collection-name>.<validator-plugin-name>.
+
This option can be passed in lookup plugin as a key, value pair. For example config_data|ansible.utils.validate(config_criteria, engine='ansible.utils.jsonschema'), in this case the value ansible.utils.jsonschema represents the engine to be use for data validation. If the value is not provided the default value that is ansible.uitls.jsonschema will be used.
+
The value should be in fully qualified collection name format that is <org-name>.<collection-name>.<validator-plugin-name>.
@@ -102,10 +102,10 @@ 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 *key=value* pairs within filter plugin or environment variables. - - The precedence of the ``validate`` plugin configurable option is the variable passed within filter plugin as *key=value* pairs followed by the environment variables. + - 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 ``key=value`` pairs within filter plugin or environment variables. + - The precedence of the *validate* plugin configurable option is the variable passed within filter plugin as ``key=value`` pairs followed by the environment variables. diff --git a/docs/ansible.utils.validate_lookup.rst b/docs/ansible.utils.validate_lookup.rst index 583c890..84a4e22 100644 --- a/docs/ansible.utils.validate_lookup.rst +++ b/docs/ansible.utils.validate_lookup.rst @@ -17,7 +17,7 @@ Version added: 1.0.0 Synopsis -------- -- Validate ``data`` with provided ``criteria`` based on the validation ``engine``. +- Validate *data* with provided *criteria* based on the validation *engine*. @@ -49,9 +49,9 @@ Parameters -
The criteria used for validation of value that represents data options.
-
This option represents the second argument passed in the lookup plugin For example lookup(config_data, config_criteria, engine='ansible.utils.jsonschema'), in this case the value of config_criteria represents this option.
-
For the type of criteria that represents this value refer to the documentation of individual validate plugins.
+
The criteria used for validation of value that represents data options.
+
This option represents the second argument passed in the lookup plugin For example lookup(config_data, config_criteria, engine='ansible.utils.jsonschema'), in this case the value of config_criteria represents this option.
+
For the type of criteria that represents this value refer to the documentation of individual validate plugins.
@@ -69,9 +69,9 @@ Parameters -
Data that will be validated against criteria.
-
This option represents the value that is passed to the lookup plugin as the first argument. For example lookup(config_data, config_criteria, engine='ansible.utils.jsonschema'), in this case config_data represents this option.
-
For the type of data that represents this value refer to the documentation of individual validate plugins.
+
Data that will be validated against criteria.
+
This option represents the value that is passed to the lookup plugin as the first argument. For example lookup(config_data, config_criteria, engine='ansible.utils.jsonschema'), in this case config_data represents this option.
+
For the type of data that represents this value refer to the documentation of individual validate plugins.
@@ -90,8 +90,8 @@ Parameters
The name of the validate plugin to use.
-
This option can be passed in lookup plugin as a key, value pair. For example lookup(config_data, config_criteria, engine='ansible.utils.jsonschema'), in this case the value ansible.utils.jsonschema represents the engine to be use for data validation. If the value is not provided the default value that is ansible.uitls.jsonschema will be used.
-
The value should be in fully qualified collection name format that is <org-name>.<collection-name>.<validate-plugin-name>.
+
This option can be passed in lookup plugin as a key, value pair. For example lookup(config_data, config_criteria, engine='ansible.utils.jsonschema'), in this case the value ansible.utils.jsonschema represents the engine to be use for data validation. If the value is not provided the default value that is ansible.uitls.jsonschema will be used.
+
The value should be in fully qualified collection name format that is <org-name>.<collection-name>.<validate-plugin-name>.
@@ -102,10 +102,10 @@ 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 *key=value* pairs within lookup plugin or task or environment variables. - - The precedence the ``validate`` plugin configurable option is the variable passed within lookup plugin as *key=value* pairs followed by task variables followed by environment variables. + - 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 ``key=value`` pairs within lookup plugin or task or environment variables. + - The precedence the validate plugin configurable option is the variable passed within lookup plugin as ``key=value`` pairs followed by task variables followed by environment variables. @@ -115,7 +115,7 @@ Examples .. code-block:: yaml - name: set facts for data and criteria - ansible.builtinset_fact: + 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')}}" diff --git a/docs/ansible.utils.validate_module.rst b/docs/ansible.utils.validate_module.rst index e9acd7e..272da06 100644 --- a/docs/ansible.utils.validate_module.rst +++ b/docs/ansible.utils.validate_module.rst @@ -46,7 +46,7 @@ Parameters -
The criteria used for validation of data. For the type of criteria refer to the documentation of individual validate plugins.
+
The criteria used for validation of data. For the type of criteria refer to the documentation of individual validate plugins.
@@ -62,7 +62,7 @@ Parameters -
Data that will be validated against criteria. For the type of data refer to the documentation of individual validate plugins.
+
Data that will be validated against criteria. For the type of data refer to the documentation of individual validate plugins.
@@ -89,10 +89,10 @@ 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. + - 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. + - The precedence of the validate plugin configurable option is task variables followed by the environment variables. @@ -135,11 +135,12 @@ Common return values are documented `here
list + / elements=string
- when data value is invalid + when data value is invalid -
The list of errors in data based on the criteria.
+
The list of errors in data based on the criteria.

@@ -154,9 +155,9 @@ Common return values are documented `here 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.
+
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.

diff --git a/docs/ansible.utils.validate_test.rst b/docs/ansible.utils.validate_test.rst index 11b1de6..c218b43 100644 --- a/docs/ansible.utils.validate_test.rst +++ b/docs/ansible.utils.validate_test.rst @@ -17,7 +17,7 @@ Version added: 1.0.0 Synopsis -------- -- Validate ``data`` with provided ``criteria`` based on the validation ``engine``. +- Validate *data* with provided *criteria* based on the validation *engine*. @@ -49,9 +49,9 @@ Parameters -
The criteria used for validation of value that represents data options.
-
This option is passed to the test plugin as key, value pair For example config_data is ansible.utils.validate(criteria=criteria), in this case the value of criteria key represents this criteria for data validation.
-
For the type of criteria that represents this value refer documentation of individual validate plugins.
+
The criteria used for validation of value that represents data options.
+
This option is passed to the test plugin as key, value pair For example config_data is ansible.utils.validate(criteria=criteria), in this case the value of criteria key represents this criteria for data validation.
+
For the type of criteria that represents this value refer documentation of individual validate plugins.
@@ -69,9 +69,9 @@ Parameters -
A data that will be validated against criteria.
-
This option represents the value that is passed to test plugin as check. For example config_data is ansible.utils.validate(criteria=criteria, in this case config_data represents this option.
-
For the type of data that represents this value refer documentation of individual validate plugins.
+
A data that will be validated against criteria.
+
This option represents the value that is passed to test plugin as check. For example config_data is ansible.utils.validate(criteria=criteria, in this case config_data represents this option.
+
For the type of data that represents this value refer documentation of individual validate plugins.
@@ -90,8 +90,8 @@ Parameters
The name of the validate plugin to use.
-
This option can be passed in test plugin as a key, value pair For example config_data is ansible.utils.validate(engine='ansible.utils.jsonschema', criteria=criteria), in this case the value of engine key represents the engine to be use for data validation. If the value is not provided the default value that is ansible.uitls.jsonschema will be used.
-
The value should be in fully qualified collection name format that is <org-name>.<collection-name>.<validate-plugin-name>.
+
This option can be passed in test plugin as a key, value pair For example config_data is ansible.utils.validate(engine='ansible.utils.jsonschema', criteria=criteria), in this case the value of engine key represents the engine to be use for data validation. If the value is not provided the default value that is ansible.utils.jsonschema will be used.
+
The value should be in fully qualified collection name format that is <org-name>.<collection-name>.<validate-plugin-name>.
@@ -102,10 +102,10 @@ Notes ----- .. note:: - - For the type of options ``data`` and ``criteria`` refer the individual ``validate`` plugin documentation that is represented in the value of ``engine`` option. - - For additional plugin configuration options refer the individual ``validate`` plugin documentation that is represented by the value of ``engine`` option. - - The plugin configuration option can be either passed as *key=value* pairs within test plugin or set as environment variables. - - The precedence the ``validate`` plugin configurable option is the variable passed within test plugin as *key=value* pairs followed by task variables followed by environment variables. + - For the type of options *data* and *criteria* refer the individual validate plugin documentation that is represented in the value of *engine* option. + - For additional plugin configuration options refer the individual validate plugin documentation that is represented by the value of *engine* option. + - The plugin configuration option can be either passed as ``key=value`` pairs within test plugin or set as environment variables. + - The precedence the validate plugin configurable option is the variable passed within test plugin as ``key=value`` pairs followed by task variables followed by environment variables.