##### SUMMARY

In the Kubernetes collection's CI tests, the sanity check, which uses `ansible-test sanity --docker -v --color --python 3.6`, started failing with the following error:

```
ERROR: Command "importer.py" returned exit status 1.
>>> Standard Error
Traceback (most recent call last):
  File "/root/ansible/ansible_collections/community/kubernetes/tests/output/.tmp/sanity/import/minimal-py36/bin/importer.py", line 447, in <module>
    main()
  File "/root/ansible/ansible_collections/community/kubernetes/tests/output/.tmp/sanity/import/minimal-py36/bin/importer.py", line 51, in main
    from ansible.utils.collection_loader import AnsibleCollectionLoader
  File "/root/ansible/lib/ansible/utils/collection_loader.py", line 15, in <module>
    from ansible import constants as C
  File "/root/ansible/lib/ansible/constants.py", line 12, in <module>
    from jinja2 import Template
ModuleNotFoundError: No module named 'jinja2'
```

Nothing in the collection has changed in the past week, and no runs failed until this morning's CI run, so it seems something committed to ansible/ansible `devel` has caused this failure.

##### ISSUE TYPE

- Bug Report

##### COMPONENT NAME

ansible-test

##### ANSIBLE VERSION

devel (as of this morning)

##### CONFIGURATION

N/A - defaults

##### OS / ENVIRONMENT

Linux

##### STEPS TO REPRODUCE

  1. Clone kubernetes collection repo
  2. Install Ansible @ devel
  3. Run `ansible-test sanity --docker -v --color --python 3.6`

##### EXPECTED RESULTS

Tests should pass, as they have for the past few weeks.

##### ACTUAL RESULTS

Test fail, with the message in this issue's summary.
"""
        Attempt to parse a string as a fully-qualified collection reference, returning None on failure (instead of raising an error)
        :param ref: collection reference to parse (a valid ref is of the form 'ns.coll.resource' or 'ns.coll.subdir1.subdir2.resource')
        :param ref_type: the type of the reference, eg 'module', 'role', 'doc_fragment'
        :return: a populated AnsibleCollectionRef object on successful parsing, else None
        """
        try:
            return AnsibleCollectionRef.from_fqcr(ref, ref_type)
        except ValueError:
            pass
    @staticmethod
    def legacy_plugin_dir_to_plugin_type(legacy_plugin_dir_name):
        """
        Utility method to convert from a PluginLoader dir name to a plugin ref_type
        :param legacy_plugin_dir_name: PluginLoader dir name (eg, 'action_plugins', 'library')
        :return: the corresponding plugin ref_type (eg, 'action', 'role')
        """
        legacy_plugin_dir_name = to_text(legacy_plugin_dir_name)
        plugin_type = legacy_plugin_dir_name.replace(u'_plugins', u'')
        if plugin_type == u'library':
            plugin_type = u'modules'
        if plugin_type not in AnsibleCollectionRef.VALID_REF_TYPES:
            raise ValueError('{0} cannot be mapped to a valid collection ref type'.format(to_native(legacy_plugin_dir_name)))
        return plugin_type
    @staticmethod
    def is_valid_fqcr(ref, ref_type=None):