##### 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.
if not isinstance(opt['description'], string_types):
                    raise AnsibleError("Expected string in description of %s, got %s" % (o, type(opt['description'])))
                text.append(textwrap.fill(DocCLI.tty_ify(opt['description']), limit, initial_indent=opt_indent, subsequent_indent=opt_indent))
            del opt['description']
            aliases = ''
            if 'aliases' in opt:
                if len(opt['aliases']) > 0:
                    aliases = "(Aliases: " + ", ".join(str(i) for i in opt['aliases']) + ")"
                del opt['aliases']
            choices = ''
            if 'choices' in opt:
                if len(opt['choices']) > 0:
                    choices = "(Choices: " + ", ".join(str(i) for i in opt['choices']) + ")"
                del opt['choices']
            default = ''
            if 'default' in opt or not required:
                default = "[Default: %s" % str(opt.pop('default', '(null)')) + "]"
            text.append(textwrap.fill(DocCLI.tty_ify(aliases + choices + default), limit,
                                      initial_indent=opt_indent, subsequent_indent=opt_indent))
            if 'options' in opt:
                text.append("%soptions:\n" % opt_indent)
                DocCLI.add_fields(text, opt.pop('options'), limit, opt_indent + opt_indent)
            if 'spec' in opt:
                text.append("%sspec:\n" % opt_indent)
                DocCLI.add_fields(text, opt.pop('spec'), limit, opt_indent + opt_indent)
            conf = {}
            for config in ('env', 'ini', 'yaml', 'vars', 'keywords'):
                if config in opt and opt[config]:
                    conf[config] = opt.pop(config)
                    for ignore in DocCLI.IGNORE: