molecule: REGRESSION 2.19 -> 2.20 Docker image fails with "Failed to import docker or docker-py - No module named docker"

Issue Type

  • Bug report

Molecule and Ansible details

ansible --version && molecule --version

docker run --rm -it -v "$(pwd)":/root -v /var/run/docker.sock:/var/run/docker.sock -w /root quay.io/ansible/molecule:latest sudo molecule --version
molecule, version 2.19.0

docker run --rm -it -v "$(pwd)":/root -v /var/run/docker.sock:/var/run/docker.sock -w /root quay.io/ansible/molecule:latest sudo ansible --version
ansible 2.7.8
  config file = None
  configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/site-packages/ansible
  executable location = /usr/bin/ansible
  python version = 2.7.15 (default, Jan 24 2019, 16:32:39) [GCC 8.2.0]


Molecule installation method (one of):

  • NONE: using docker image

Ansible installation method (one of):

  • NONE: using docker image

docker images | grep molecule

quay.io/ansible/molecule   latest              76c463a83726        3 days ago          516MB
molecule_local/centos      7                   d5efb4c1540b        3 days ago          226MB
quay.io/ansible/molecule   2.19                0a943e169bf0        4 months ago        580MB

Detail any linters or test runners used:

Desired Behavior

On repo https://github.com/alainchiasson/role-test-duplicates.git

The following works :

docker run --rm -it -v "$(pwd)":/root -v /var/run/docker.sock:/var/run/docker.sock -w /root quay.io/ansible/molecule:2.19 sudo molecule test

Please give some details of the feature being requested or what should happen if providing a bug report.

Actual Behaviour

On repo https://github.com/alainchiasson/role-test-duplicates.git

The following fails:

docker run --rm -it -v "$(pwd)":/root -v /var/run/docker.sock:/var/run/docker.sock -w /root quay.io/ansible/molecule:latest sudo molecule test

Running from a macbook pro. - debug of prepare.

MBP-de-Alain:role-test-duplicates alain$ docker run --rm -it -v "$(pwd)":/root -v /var/run/docker.sock:/var/run/docker.sock -w /root quay.io/ansible/molecule:latest sudo molecule --debug create
--> Validating schema /root/molecule/default/molecule.yml.
Validation completed successfully.
--> Test matrix

└── default
    ├── create
    └── prepare

--> Scenario: 'default'
--> Action: 'create'
DEBUG: ANSIBLE ENVIRONMENT
---
ANSIBLE_CONFIG: /tmp/molecule/root/default/ansible.cfg
ANSIBLE_FILTER_PLUGINS: /usr/lib/python2.7/site-packages/molecule/provisioner/ansible/plugins/filters:/tmp/molecule/root/default/plugins/filters:/root/plugins/filters
ANSIBLE_LIBRARY: /usr/lib/python2.7/site-packages/molecule/provisioner/ansible/plugins/libraries:/tmp/molecule/root/default/library:/root/library
ANSIBLE_ROLES_PATH: /tmp/molecule/root/default/roles:/

DEBUG: MOLECULE ENVIRONMENT
---
MOLECULE_DEBUG: 'True'
MOLECULE_DEPENDENCY_NAME: galaxy
MOLECULE_DRIVER_NAME: docker
MOLECULE_ENV_FILE: /root/.env.yml
MOLECULE_EPHEMERAL_DIRECTORY: /tmp/molecule/root/default
MOLECULE_FILE: /root/molecule/default/molecule.yml
MOLECULE_INSTANCE_CONFIG: /tmp/molecule/root/default/instance_config.yml
MOLECULE_INVENTORY_FILE: /tmp/molecule/root/default/ansible_inventory.yml
MOLECULE_LINT_NAME: yamllint
MOLECULE_PROJECT_DIRECTORY: /root
MOLECULE_PROVISIONER_LINT_NAME: ansible-lint
MOLECULE_PROVISIONER_NAME: ansible
MOLECULE_SCENARIO_DIRECTORY: /root/molecule/default
MOLECULE_SCENARIO_NAME: default
MOLECULE_VERIFIER_LINT_NAME: flake8
MOLECULE_VERIFIER_NAME: testinfra
MOLECULE_VERIFIER_TEST_DIRECTORY: /root/molecule/default/tests

DEBUG: SHELL REPLAY
ANSIBLE_CONFIG=/tmp/molecule/root/default/ansible.cfg ANSIBLE_FILTER_PLUGINS=/usr/lib/python2.7/site-packages/molecule/provisioner/ansible/plugins/filters:/tmp/molecule/root/default/plugins/filters:/root/plugins/filters ANSIBLE_LIBRARY=/usr/lib/python2.7/site-packages/molecule/provisioner/ansible/plugins/libraries:/tmp/molecule/root/default/library:/root/library ANSIBLE_ROLES_PATH=/tmp/molecule/root/default/roles:/ MOLECULE_DEBUG=True MOLECULE_DEPENDENCY_NAME=galaxy MOLECULE_DRIVER_NAME=docker MOLECULE_ENV_FILE=/root/.env.yml MOLECULE_EPHEMERAL_DIRECTORY=/tmp/molecule/root/default MOLECULE_FILE=/root/molecule/default/molecule.yml MOLECULE_INSTANCE_CONFIG=/tmp/molecule/root/default/instance_config.yml MOLECULE_INVENTORY_FILE=/tmp/molecule/root/default/ansible_inventory.yml MOLECULE_LINT_NAME=yamllint MOLECULE_PROJECT_DIRECTORY=/root MOLECULE_PROVISIONER_LINT_NAME=ansible-lint MOLECULE_PROVISIONER_NAME=ansible MOLECULE_SCENARIO_DIRECTORY=/root/molecule/default MOLECULE_SCENARIO_NAME=default MOLECULE_VERIFIER_LINT_NAME=flake8 MOLECULE_VERIFIER_NAME=testinfra MOLECULE_VERIFIER_TEST_DIRECTORY=/root/molecule/default/tests

DEBUG: COMMAND
/usr/bin/ansible-playbook --skip-tags=molecule-notest,notest --inventory=/tmp/molecule/root/default/ansible_inventory.yml --diff /usr/lib/python2.7/site-packages/molecule/provisioner/ansible/playbooks/docker/create.yml -vvv

    ansible-playbook 2.7.8
      config file = /tmp/molecule/root/default/ansible.cfg
      configured module search path = [u'/usr/lib/python2.7/site-packages/molecule/provisioner/ansible/plugins/libraries', u'/tmp/molecule/root/default/library', u'/root/library']
      ansible python module location = /usr/lib/python2.7/site-packages/ansible
      executable location = /usr/bin/ansible-playbook
      python version = 2.7.15 (default, Jan 24 2019, 16:32:39) [GCC 8.2.0]
    Using /tmp/molecule/root/default/ansible.cfg as config file
    /tmp/molecule/root/default/ansible_inventory.yml did not meet host_list requirements, check plugin documentation if this is unexpected
    /tmp/molecule/root/default/ansible_inventory.yml did not meet script requirements, check plugin documentation if this is unexpected
    Parsed /tmp/molecule/root/default/ansible_inventory.yml inventory source with yaml plugin

    PLAYBOOK: create.yml ***********************************************************
    1 plays in /usr/lib/python2.7/site-packages/molecule/provisioner/ansible/playbooks/docker/create.yml

    PLAY [Create] ******************************************************************
    META: ran handlers

    TASK [Log into a Docker registry] **********************************************
    task path: /usr/lib/python2.7/site-packages/molecule/provisioner/ansible/playbooks/docker/create.yml:8
    skipping: [localhost] => (item={'image': u'centos:7', 'name': u'instance'})  => {
        "changed": false,
        "item": {
            "image": "centos:7",
            "name": "instance"
        },
        "skip_reason": "Conditional result was False"
    }

    TASK [Create Dockerfiles from image names] *************************************
    task path: /usr/lib/python2.7/site-packages/molecule/provisioner/ansible/playbooks/docker/create.yml:21
    <127.0.0.1> ESTABLISH LOCAL CONNECTION FOR USER: root
    <127.0.0.1> EXEC /bin/sh -c 'echo ~root && sleep 0'
    <127.0.0.1> EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo /root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818 `" && echo ansible-tmp-1552055034.91-540484935818="` echo /root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818 `" ) && sleep 0'
    Using module file /usr/lib/python2.7/site-packages/ansible/modules/files/stat.py
    <127.0.0.1> PUT /root/.ansible/tmp/ansible-local-70NMJeb/tmp9_ABCY TO /root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818/AnsiballZ_stat.py
    <127.0.0.1> EXEC /bin/sh -c 'chmod u+x /root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818/ /root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818/AnsiballZ_stat.py && sleep 0'
    <127.0.0.1> EXEC /bin/sh -c '/usr/bin/python2 /root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818/AnsiballZ_stat.py && sleep 0'
    Using module file /usr/lib/python2.7/site-packages/ansible/modules/files/file.py
    <127.0.0.1> PUT /root/.ansible/tmp/ansible-local-70NMJeb/tmpNJYzkZ TO /root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818/AnsiballZ_file.py
    <127.0.0.1> EXEC /bin/sh -c 'chmod u+x /root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818/ /root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818/AnsiballZ_file.py && sleep 0'
    <127.0.0.1> EXEC /bin/sh -c '/usr/bin/python2 /root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818/AnsiballZ_file.py && sleep 0'
    <127.0.0.1> PUT /root/.ansible/tmp/ansible-local-70NMJeb/tmpYHCJgR/Dockerfile.j2 TO /root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818/source
    <127.0.0.1> EXEC /bin/sh -c 'chmod u+x /root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818/ /root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818/source && sleep 0'
    Using module file /usr/lib/python2.7/site-packages/ansible/modules/files/copy.py
    <127.0.0.1> PUT /root/.ansible/tmp/ansible-local-70NMJeb/tmpcZm_BG TO /root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818/AnsiballZ_copy.py
    <127.0.0.1> EXEC /bin/sh -c 'chmod u+x /root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818/ /root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818/AnsiballZ_copy.py && sleep 0'
    <127.0.0.1> EXEC /bin/sh -c '/usr/bin/python2 /root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818/AnsiballZ_copy.py && sleep 0'
    <127.0.0.1> EXEC /bin/sh -c 'rm -f -r /root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818/ > /dev/null 2>&1 && sleep 0'
    --- before
    +++ after: /root/.ansible/tmp/ansible-local-70NMJeb/tmpYHCJgR/Dockerfile.j2
    @@ -0,0 +1,10 @@
    +# Molecule managed
    +
    +FROM centos:7
    +
    +RUN if [ $(command -v apt-get) ]; then apt-get update && apt-get install -y python sudo bash ca-certificates && apt-get clean; \
    +    elif [ $(command -v dnf) ]; then dnf makecache && dnf --assumeyes install python sudo python-devel python2-dnf bash && dnf clean all; \
    +    elif [ $(command -v yum) ]; then yum makecache fast && yum install -y python sudo yum-plugin-ovl bash && sed -i 's/plugins=0/plugins=1/g' /etc/yum.conf && yum clean all; \
    +    elif [ $(command -v zypper) ]; then zypper refresh && zypper install -y python sudo bash python-xml && zypper clean -a; \
    +    elif [ $(command -v apk) ]; then apk update && apk add --no-cache python sudo bash ca-certificates; \
    +    elif [ $(command -v xbps-install) ]; then xbps-install -Syu && xbps-install -y python sudo bash ca-certificates && xbps-remove -O; fi

    changed: [localhost] => (item={'image': u'centos:7', 'name': u'instance'}) => {
        "changed": true,
        "checksum": "40a922dca6c7a93024ac1ab412987783252b69c2",
        "dest": "/tmp/molecule/root/default/Dockerfile_centos_7",
        "diff": [
            {
                "after": "# Molecule managed\n\nFROM centos:7\n\nRUN if [ $(command -v apt-get) ]; then apt-get update && apt-get install -y python sudo bash ca-certificates && apt-get clean; \\\n    elif [ $(command -v dnf) ]; then dnf makecache && dnf --assumeyes install python sudo python-devel python2-dnf bash && dnf clean all; \\\n    elif [ $(command -v yum) ]; then yum makecache fast && yum install -y python sudo yum-plugin-ovl bash && sed -i 's/plugins=0/plugins=1/g' /etc/yum.conf && yum clean all; \\\n    elif [ $(command -v zypper) ]; then zypper refresh && zypper install -y python sudo bash python-xml && zypper clean -a; \\\n    elif [ $(command -v apk) ]; then apk update && apk add --no-cache python sudo bash ca-certificates; \\\n    elif [ $(command -v xbps-install) ]; then xbps-install -Syu && xbps-install -y python sudo bash ca-certificates && xbps-remove -O; fi\n",
                "after_header": "/root/.ansible/tmp/ansible-local-70NMJeb/tmpYHCJgR/Dockerfile.j2",
                "before": ""
            }
        ],
        "gid": 0,
        "group": "root",
        "invocation": {
            "module_args": {
                "_original_basename": "Dockerfile.j2",
                "attributes": null,
                "backup": false,
                "checksum": "40a922dca6c7a93024ac1ab412987783252b69c2",
                "content": null,
                "delimiter": null,
                "dest": "/tmp/molecule/root/default/Dockerfile_centos_7",
                "directory_mode": null,
                "follow": false,
                "force": true,
                "group": null,
                "local_follow": null,
                "mode": null,
                "owner": null,
                "regexp": null,
                "remote_src": null,
                "selevel": null,
                "serole": null,
                "setype": null,
                "seuser": null,
                "src": "/root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818/source",
                "unsafe_writes": null,
                "validate": null
            }
        },
        "item": {
            "image": "centos:7",
            "name": "instance"
        },
        "md5sum": "6e0af0361f5bc81091582444d1c7fa34",
        "mode": "0644",
        "owner": "root",
        "size": 850,
        "src": "/root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818/source",
        "state": "file",
        "uid": 0
    }

    TASK [Discover local Docker images] ********************************************
    task path: /usr/lib/python2.7/site-packages/molecule/provisioner/ansible/playbooks/docker/create.yml:29
    <127.0.0.1> ESTABLISH LOCAL CONNECTION FOR USER: root
    <127.0.0.1> EXEC /bin/sh -c 'echo ~root && sleep 0'
    <127.0.0.1> EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo /root/.ansible/tmp/ansible-tmp-1552055036.04-63603356363387 `" && echo ansible-tmp-1552055036.04-63603356363387="` echo /root/.ansible/tmp/ansible-tmp-1552055036.04-63603356363387 `" ) && sleep 0'
    Using module file /usr/lib/python2.7/site-packages/ansible/modules/cloud/docker/docker_image_facts.py
    <127.0.0.1> PUT /root/.ansible/tmp/ansible-local-70NMJeb/tmpYNWRDR TO /root/.ansible/tmp/ansible-tmp-1552055036.04-63603356363387/AnsiballZ_docker_image_facts.py
    <127.0.0.1> EXEC /bin/sh -c 'chmod u+x /root/.ansible/tmp/ansible-tmp-1552055036.04-63603356363387/ /root/.ansible/tmp/ansible-tmp-1552055036.04-63603356363387/AnsiballZ_docker_image_facts.py && sleep 0'
    <127.0.0.1> EXEC /bin/sh -c '/usr/bin/python2 /root/.ansible/tmp/ansible-tmp-1552055036.04-63603356363387/AnsiballZ_docker_image_facts.py && sleep 0'
    <127.0.0.1> EXEC /bin/sh -c 'rm -f -r /root/.ansible/tmp/ansible-tmp-1552055036.04-63603356363387/ > /dev/null 2>&1 && sleep 0'
    The full traceback is:
    WARNING: The below traceback may *not* be related to the actual failure.
      File "/tmp/ansible_docker_image_facts_payload_ZdQCDR/__main__.py", line 161, in <module>
        from docker import utils

    failed: [localhost] (item={'_ansible_parsed': True, u'md5sum': u'6e0af0361f5bc81091582444d1c7fa34', u'uid': 0, u'dest': u'/tmp/molecule/root/default/Dockerfile_centos_7', '_ansible_item_result': True, u'owner': u'root', 'diff': [{'after': u"# Molecule managed\n\nFROM centos:7\n\nRUN if [ $(command -v apt-get) ]; then apt-get update && apt-get install -y python sudo bash ca-certificates && apt-get clean; \\\n    elif [ $(command -v dnf) ]; then dnf makecache && dnf --assumeyes install python sudo python-devel python2-dnf bash && dnf clean all; \\\n    elif [ $(command -v yum) ]; then yum makecache fast && yum install -y python sudo yum-plugin-ovl bash && sed -i 's/plugins=0/plugins=1/g' /etc/yum.conf && yum clean all; \\\n    elif [ $(command -v zypper) ]; then zypper refresh && zypper install -y python sudo bash python-xml && zypper clean -a; \\\n    elif [ $(command -v apk) ]; then apk update && apk add --no-cache python sudo bash ca-certificates; \\\n    elif [ $(command -v xbps-install) ]; then xbps-install -Syu && xbps-install -y python sudo bash ca-certificates && xbps-remove -O; fi\n", 'after_header': u'/root/.ansible/tmp/ansible-local-70NMJeb/tmpYHCJgR/Dockerfile.j2', 'before': u''}], '_ansible_no_log': False, u'src': u'/root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818/source', u'group': u'root', '_ansible_item_label': {'image': u'centos:7', 'name': u'instance'}, 'item': {'image': u'centos:7', 'name': u'instance'}, u'checksum': u'40a922dca6c7a93024ac1ab412987783252b69c2', u'changed': True, 'failed': False, u'state': u'file', u'gid': 0, u'mode': u'0644', u'invocation': {u'module_args': {u'directory_mode': None, u'force': True, u'remote_src': None, u'dest': u'/tmp/molecule/root/default/Dockerfile_centos_7', u'selevel': None, u'_original_basename': u'Dockerfile.j2', u'delimiter': None, u'regexp': None, u'owner': None, u'follow': False, u'validate': None, u'local_follow': None, u'src': u'/root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818/source', u'group': None, u'unsafe_writes': None, u'checksum': u'40a922dca6c7a93024ac1ab412987783252b69c2', u'seuser': None, u'serole': None, u'content': None, u'setype': None, u'mode': None, u'attributes': None, u'backup': False}}, u'size': 850, '_ansible_ignore_errors': None}) => {
        "changed": false,
        "invocation": {
            "module_args": {
                "api_version": "auto",
                "cacert_path": null,
                "cert_path": null,
                "debug": false,
                "docker_host": "unix://var/run/docker.sock",
                "key_path": null,
                "name": [
                    "molecule_local/instance"
                ],
                "ssl_version": null,
                "timeout": 60,
                "tls": false,
                "tls_hostname": "localhost",
                "tls_verify": false
            }
        },
        "item": {
            "changed": true,
            "checksum": "40a922dca6c7a93024ac1ab412987783252b69c2",
            "dest": "/tmp/molecule/root/default/Dockerfile_centos_7",
            "diff": [
                {
                    "after": "# Molecule managed\n\nFROM centos:7\n\nRUN if [ $(command -v apt-get) ]; then apt-get update && apt-get install -y python sudo bash ca-certificates && apt-get clean; \\\n    elif [ $(command -v dnf) ]; then dnf makecache && dnf --assumeyes install python sudo python-devel python2-dnf bash && dnf clean all; \\\n    elif [ $(command -v yum) ]; then yum makecache fast && yum install -y python sudo yum-plugin-ovl bash && sed -i 's/plugins=0/plugins=1/g' /etc/yum.conf && yum clean all; \\\n    elif [ $(command -v zypper) ]; then zypper refresh && zypper install -y python sudo bash python-xml && zypper clean -a; \\\n    elif [ $(command -v apk) ]; then apk update && apk add --no-cache python sudo bash ca-certificates; \\\n    elif [ $(command -v xbps-install) ]; then xbps-install -Syu && xbps-install -y python sudo bash ca-certificates && xbps-remove -O; fi\n",
                    "after_header": "/root/.ansible/tmp/ansible-local-70NMJeb/tmpYHCJgR/Dockerfile.j2",
                    "before": ""
                }
            ],
            "failed": false,
            "gid": 0,
            "group": "root",
            "invocation": {
                "module_args": {
                    "_original_basename": "Dockerfile.j2",
                    "attributes": null,
                    "backup": false,
                    "checksum": "40a922dca6c7a93024ac1ab412987783252b69c2",
                    "content": null,
                    "delimiter": null,
                    "dest": "/tmp/molecule/root/default/Dockerfile_centos_7",
                    "directory_mode": null,
                    "follow": false,
                    "force": true,
                    "group": null,
                    "local_follow": null,
                    "mode": null,
                    "owner": null,
                    "regexp": null,
                    "remote_src": null,
                    "selevel": null,
                    "serole": null,
                    "setype": null,
                    "seuser": null,
                    "src": "/root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818/source",
                    "unsafe_writes": null,
                    "validate": null
                }
            },
            "item": {
                "image": "centos:7",
                "name": "instance"
            },
            "md5sum": "6e0af0361f5bc81091582444d1c7fa34",
            "mode": "0644",
            "owner": "root",
            "size": 850,
            "src": "/root/.ansible/tmp/ansible-tmp-1552055034.91-540484935818/source",
            "state": "file",
            "uid": 0
        },
        "msg": "Failed to import docker or docker-py - No module named docker. Try `pip install docker` or `pip install docker-py` (Python 2.6)"
    }

    PLAY RECAP *********************************************************************
    localhost                  : ok=1    changed=1    unreachable=0    failed=1


This may also be relavent - pip list in both images.

quay.io/ansible/molecule:latest sudo pip list

MBP-de-Alain:role-test-duplicates alain$ docker run --rm -it -v "$(pwd)":/root -v /var/run/docker.sock:/var/run/docker.sock -w /root quay.io/ansible/molecule:latest sudo pip list
DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7.
Package                       Version
----------------------------- -------------------
ansible                       2.7.8
ansible-lint                  3.4.23
anyconfig                     0.9.7
arrow                         0.13.1
asn1crypto                    0.24.0
atomicwrites                  1.3.0
attrs                         19.1.0
backports.functools-lru-cache 1.5
bcrypt                        3.1.6
binaryornot                   0.4.4
Cerberus                      1.2
certifi                       2018.11.29
cffi                          1.12.2
chardet                       3.0.4
click                         6.7
click-completion              0.3.1
colorama                      0.3.9
configparser                  3.7.3
cookiecutter                  1.6.0
cryptography                  2.6.1
enum34                        1.1.6
fasteners                     0.14.1
flake8                        3.5.0
funcsigs                      1.0.2
future                        0.17.1
git-url-parse                 1.2.0
idna                          2.8
ipaddress                     1.0.22
Jinja2                        2.10
jinja2-time                   0.2.0
MarkupSafe                    1.1.1
mccabe                        0.6.1
molecule                      2.19.0
monotonic                     1.5
more-itertools                5.0.0
paramiko                      2.4.2
pathlib2                      2.3.3
pathspec                      0.5.9
pbr                           4.1.0
pexpect                       4.6.0
pip                           19.0.3
pluggy                        0.9.0
poyo                          0.4.2
psutil                        5.4.6
ptyprocess                    0.6.0
py                            1.8.0
pyasn1                        0.4.5
pycodestyle                   2.3.1
pycparser                     2.19
pyflakes                      1.6.0
PyNaCl                        1.3.0
pytest                        4.3.0
python-dateutil               2.8.0
python-gilt                   1.2.1
PyYAML                        3.13
requests                      2.21.0
scandir                       1.9.0
setuptools                    40.6.3.post20190116
sh                            1.12.14
six                           1.11.0
tabulate                      0.8.2
testinfra                     1.16.0
tree-format                   0.1.2
urllib3                       1.24.1
virtualenv                    16.4.3
whichcraft                    0.5.2
yamllint                      1.11.1

quay.io/ansible/molecule:2.19 sudo pip list

MBP-de-Alain:role-test-duplicates alain$ docker run --rm -it -v "$(pwd)":/root -v /var/run/docker.sock:/var/run/docker.sock -w /root quay.io/ansible/molecule:2.19 sudo pip list
Package                               Version
------------------------------------- -------------------
adal                                  1.2.0
ansible                               2.7.1
ansible-lint                          3.4.23
anyconfig                             0.9.7
applicationinsights                   0.11.7
argcomplete                           1.9.4
arrow                                 0.12.1
asn1crypto                            0.24.0
atomicwrites                          1.2.1
attrs                                 18.2.0
azure-batch                           5.1.0
azure-cli                             2.0.49
azure-cli-acr                         2.1.7
azure-cli-acs                         2.3.9
azure-cli-advisor                     0.6.0
azure-cli-ams                         0.2.4
azure-cli-appservice                  0.2.5
azure-cli-backup                      1.2.1
azure-cli-batch                       3.4.1
azure-cli-batchai                     0.4.4
azure-cli-billing                     0.2.0
azure-cli-botservice                  0.1.1
azure-cli-cdn                         0.2.0
azure-cli-cloud                       2.1.0
azure-cli-cognitiveservices           0.2.3
azure-cli-command-modules-nspkg       2.0.2
azure-cli-configure                   2.0.18
azure-cli-consumption                 0.4.0
azure-cli-container                   0.3.7
azure-cli-core                        2.0.35
azure-cli-cosmosdb                    0.2.2
azure-cli-dla                         0.2.3
azure-cli-dls                         0.1.4
azure-cli-dms                         0.1.1
azure-cli-eventgrid                   0.2.0
azure-cli-eventhubs                   0.3.0
azure-cli-extension                   0.2.2
azure-cli-feedback                    2.1.4
azure-cli-find                        0.2.12
azure-cli-hdinsight                   0.1.0
azure-cli-interactive                 0.3.31
azure-cli-iot                         0.3.3
azure-cli-iotcentral                  0.1.3
azure-cli-keyvault                    2.2.5
azure-cli-lab                         0.1.2
azure-cli-maps                        0.3.2
azure-cli-monitor                     0.2.5
azure-cli-network                     2.2.7
azure-cli-nspkg                       3.0.2
azure-cli-policyinsights              0.1.0
azure-cli-profile                     2.1.1
azure-cli-rdbms                       0.3.2
azure-cli-redis                       0.3.2
azure-cli-relay                       0.1.2
azure-cli-reservations                0.4.0
azure-cli-resource                    2.1.5
azure-cli-role                        2.1.8
azure-cli-search                      0.1.1
azure-cli-servicebus                  0.3.1
azure-cli-servicefabric               0.1.6
azure-cli-signalr                     1.0.0
azure-cli-sql                         2.1.5
azure-cli-storage                     2.2.3
azure-cli-vm                          2.2.6
azure-common                          1.1.11
azure-datalake-store                  0.0.34
azure-graphrbac                       0.40.0
azure-keyvault                        1.0.0a1
azure-mgmt-advisor                    1.0.1
azure-mgmt-authorization              0.50.0
azure-mgmt-batch                      4.1.0
azure-mgmt-batchai                    2.0.0
azure-mgmt-billing                    0.2.0
azure-mgmt-botservice                 0.1.0
azure-mgmt-cdn                        3.0.0
azure-mgmt-cognitiveservices          3.0.0
azure-mgmt-compute                    2.1.0
azure-mgmt-consumption                2.0.0
azure-mgmt-containerinstance          0.4.0
azure-mgmt-containerregistry          2.0.0
azure-mgmt-containerservice           3.0.1
azure-mgmt-cosmosdb                   0.5.0
azure-mgmt-datalake-analytics         0.2.0
azure-mgmt-datalake-nspkg             3.0.1
azure-mgmt-datalake-store             0.5.0
azure-mgmt-datamigration              0.1.0
azure-mgmt-devtestlabs                2.2.0
azure-mgmt-dns                        1.2.0
azure-mgmt-eventgrid                  0.4.0
azure-mgmt-eventhub                   2.1.0
azure-mgmt-hdinsight                  0.1.0
azure-mgmt-iotcentral                 0.2.0
azure-mgmt-iothub                     0.6.0
azure-mgmt-iothubprovisioningservices 0.2.0
azure-mgmt-keyvault                   0.40.0
azure-mgmt-loganalytics               0.2.0
azure-mgmt-managementgroups           0.1.0
azure-mgmt-maps                       0.1.0
azure-mgmt-marketplaceordering        0.1.0
azure-mgmt-media                      1.0.0rc1
azure-mgmt-monitor                    0.5.2
azure-mgmt-msi                        0.2.0
azure-mgmt-network                    1.7.1
azure-mgmt-nspkg                      2.0.0
azure-mgmt-policyinsights             0.1.0
azure-mgmt-rdbms                      1.2.0
azure-mgmt-recoveryservices           0.1.0
azure-mgmt-recoveryservicesbackup     0.1.1
azure-mgmt-redis                      5.0.0
azure-mgmt-relay                      0.1.0
azure-mgmt-reservations               0.3.0
azure-mgmt-resource                   1.2.2
azure-mgmt-search                     2.0.0
azure-mgmt-servicebus                 0.5.2
azure-mgmt-servicefabric              0.2.0
azure-mgmt-signalr                    0.1.1
azure-mgmt-sql                        0.7.1
azure-mgmt-storage                    1.5.0
azure-mgmt-trafficmanager             0.50.0
azure-mgmt-web                        0.32.0
azure-multiapi-storage                0.2.2
azure-nspkg                           2.0.0
azure-storage                         0.35.1
azure-storage-blob                    1.3.1
azure-storage-common                  1.3.0
azure-storage-nspkg                   3.0.0
backports.functools-lru-cache         1.5
backports.ssl-match-hostname          3.5.0.1
bcrypt                                3.1.4
binaryornot                           0.4.4
Cerberus                              1.2
certifi                               2018.10.15
cffi                                  1.11.5
chardet                               3.0.4
click                                 6.7
click-completion                      0.3.1
colorama                              0.3.9
configparser                          3.5.0
cookiecutter                          1.6.0
cryptography                          2.3.1
docker                                3.5.1
docker-pycreds                        0.3.0
enum34                                1.1.6
fasteners                             0.14.1
flake8                                3.5.0
funcsigs                              1.0.2
future                                0.17.0
futures                               3.2.0
git-url-parse                         1.1.0
humanfriendly                         4.17
idna                                  2.7
ipaddress                             1.0.22
isodate                               0.6.0
Jinja2                                2.10
jinja2-time                           0.2.0
jmespath                              0.9.3
knack                                 0.3.3
MarkupSafe                            1.0
mccabe                                0.6.1
mock                                  2.0.0
molecule                              2.19.0
monotonic                             1.5
more-itertools                        4.3.0
msrest                                0.4.29
msrestazure                           0.5.0
ntlm-auth                             1.2.0
oauthlib                              2.1.0
packaging                             18.0
paramiko                              2.4.2
pathlib2                              2.3.2
pathspec                              0.5.9
pbr                                   4.1.0
pexpect                               4.6.0
pip                                   18.1
pluggy                                0.8.0
poyo                                  0.4.2
prompt-toolkit                        1.0.15
psutil                                5.4.6
ptyprocess                            0.6.0
py                                    1.7.0
pyasn1                                0.4.4
pycodestyle                           2.3.1
pycparser                             2.19
pydocumentdb                          2.3.3
pyflakes                              1.6.0
Pygments                              2.2.0
PyJWT                                 1.6.4
PyNaCl                                1.3.0
pyOpenSSL                             18.0.0
pyparsing                             2.2.2
pytest                                3.9.3
python-dateutil                       2.7.5
python-gilt                           1.2.1
pytz                                  2018.7
pywinrm                               0.3.0
PyYAML                                3.13
requests                              2.20.0
requests-ntlm                         1.1.0
requests-oauthlib                     1.0.0
scandir                               1.9.0
scp                                   0.12.1
setuptools                            39.1.0.post20180508
sh                                    1.12.14
six                                   1.11.0
sshtunnel                             0.1.4
tabulate                              0.8.2
testinfra                             1.16.0
tree-format                           0.1.2
urllib3                               1.24
virtualenv                            16.0.0
vsts-cd-manager                       1.0.2
wcwidth                               0.1.7
websocket-client                      0.53.0
wheel                                 0.30.0
whichcraft                            0.5.2
Whoosh                                2.7.4
xmltodict                             0.11.0
yamllint                              1.11.1
You are using pip version 18.1, however version 19.0.3 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
MBP-de-Alain:role-test-duplicates alain$

gundalow: minor edits to add formatting

About this issue

  • Original URL
  • State: closed
  • Created 5 years ago
  • Comments: 15 (15 by maintainers)

Commits related to this issue

Most upvoted comments

I’ve posted a correction suggestion to #1815. Should be good to merge after it’s addressed.

@alainchiasson Thank you for testing the pre-release and providing very detailed information.

Looks like we are missing a number packages.