Molecule: Molecule 3.1+ docker image broken

Created on 18 Oct 2020  路  9Comments  路  Source: ansible-community/molecule




Issue Type

  • Bug report

Molecule and Ansible details

$ docker run -it --entrypoint /bin/sh quay.io/ansible/molecule:3.1.2
/ # molecule --version
Failed to load driver entry point Traceback (most recent call last):
  File "/usr/lib/python3.8/site-packages/molecule_containers/driver.py", line 9, in <module>
    from molecule.driver.docker import Docker as DriverBackend
ModuleNotFoundError: No module named 'molecule.driver.docker'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.8/site-packages/molecule/api.py", line 45, in drivers
    pm.load_setuptools_entrypoints("molecule.driver")
  File "/usr/lib/python3.8/site-packages/pluggy/manager.py", line 299, in load_setuptools_entrypoints
    plugin = ep.load()
  File "/usr/lib/python3.8/importlib/metadata.py", line 77, in load
    module = import_module(match.group('module'))
  File "/usr/lib/python3.8/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 783, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/usr/lib/python3.8/site-packages/molecule_containers/driver.py", line 11, in <module>
    from molecule.driver.podman import Podman as DriverBackend
ModuleNotFoundError: No module named 'molecule.driver.podman'

molecule 0.0.0
   ansible==2.10.2 python==3.8
/ # ansible --version
ansible 2.10.2
  config file = None
  configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python3.8/site-packages/ansible
  executable location = /usr/bin/ansible
  python version = 3.8.6 (default, Oct  5 2020, 00:23:48) [GCC 10.2.0]

Molecule installation method (one of):

  • docker (quay.io)

Ansible installation method (one of):

  • docker (quay.io)
    Detail any linters or test runners used:

Desired Behavior

Download docker image and run tests with it

Actual Behaviour

Running molecule --version makes the container barf errors.

bug

All 9 comments

The Installed PiPy packages are listed below (also from inside the container)

# pip3 list
Package                       Version
----------------------------- ---------
alabaster                     0.7.12
ansible                       2.10.1
ansible-base                  2.10.2
ansible-lint                  4.3.5
apache-libcloud               3.2.0
appdirs                       1.4.4
arrow                         0.17.0
asn1crypto                    1.4.0
atomicwrites                  1.4.0
attrs                         20.2.0
Babel                         2.8.0
bcrypt                        3.2.0
binaryornot                   0.4.4
boto                          2.49.0
boto3                         1.15.17
botocore                      1.18.17
CacheControl                  0.12.6
Cerberus                      1.3.2
certifi                       2020.6.20
cffi                          1.14.3
cfgv                          3.2.0
chardet                       3.0.4
click                         7.1.2
click-completion              0.5.2
click-help-colors             0.8
colorama                      0.4.3
commonmark                    0.9.1
contextlib2                   0.6.0
cookiecutter                  1.7.2
cryptography                  2.9.2
decorator                     4.4.2
distlib                       0.3.1
distro                        1.5.0
docker                        4.3.1
docker-pycreds                0.4.0
docutils                      0.16
dogpile.cache                 1.0.2
entrypoints                   0.3
filelock                      3.0.12
flake8                        3.8.4
future                        0.18.2
hcloud                        1.9.1
html5lib                      1.1
identify                      1.5.6
idna                          2.10
imagesize                     1.2.0
iniconfig                     0.0.0
ipaddress                     1.0.23
iso8601                       0.1.13
Jinja2                        2.11.2
jinja2-time                   0.2.0
jmespath                      0.10.0
jsonpatch                     1.26
jsonpointer                   2.0
keystoneauth1                 4.2.1
libvirt-python                6.8.0
lockfile                      0.12.2
MarkupSafe                    1.1.1
mccabe                        0.6.1
molecule                      0.0.0
molecule-azure                0.4
molecule-containers           0.1
molecule-digitalocean         0.1
molecule-docker               0.2
molecule-ec2                  0.2
molecule-gce                  0.1
molecule-hetznercloud         0.2.2
molecule-libvirt              0.0.2
molecule-lxd                  0.1.dev0
molecule-openstack            0.1
molecule-podman               0.1
molecule-vagrant              0.3
more-itertools                8.5.0
msgpack                       1.0.0
munch                         2.5.0
netifaces                     0.10.9
nodeenv                       1.5.0
ntlm-auth                     1.5.0
olefile                       0.46
openstacksdk                  0.50.0
ordered-set                   4.0.2
os-service-types              1.7.0
packaging                     20.4
paramiko                      2.7.2
pathspec                      0.8.0
pbr                           5.5.0
pep517                        0.8.2
pexpect                       4.8.0
Pillow                        7.2.0
pip                           20.1.1
pluggy                        0.13.1
poyo                          0.5.0
pre-commit                    2.7.1
progress                      1.5
psutil                        5.7.2
ptyprocess                    0.6.0
py                            1.9.0
pyasn1                        0.4.8
pycodestyle                   2.6.0
pycparser                     2.20
pyflakes                      2.2.0
Pygments                      2.7.1
PyNaCl                        1.4.0
pyparsing                     2.4.7
pytest                        6.1.1
python-dateutil               2.8.1
python-slugify                4.0.1
python-vagrant                0.5.15
pytoml                        0.1.21
pytz                          2020.1
pywinrm                       0.4.1
PyYAML                        5.3.1
requests                      2.24.0
requests-ntlm                 1.1.0
requestsexceptions            1.4.0
retrying                      1.3.3
rich                          8.0.0
ruamel.yaml                   0.16.12
ruamel.yaml.clib              0.2.2
s3transfer                    0.3.3
selinux                       0.2.1
setuptools                    50.3.0
sh                            1.13.1
shellingham                   1.3.2
simplejson                    3.17.2
six                           1.15.0
snowballstemmer               2.0.0
Sphinx                        3.2.1
sphinx-ansible-theme          0.3.2
sphinx-notfound-page          0.5
sphinx-rtd-theme              0.5.0
sphinxcontrib-applehelp       1.0.2
sphinxcontrib-devhelp         1.0.2
sphinxcontrib-htmlhelp        1.0.3
sphinxcontrib-jsmath          1.0.1
sphinxcontrib-qthelp          1.0.3
sphinxcontrib-serializinghtml 1.1.4
stevedore                     3.2.2
tabulate                      0.8.7
testinfra                     5.3.1
text-unidecode                1.3
toml                          0.10.1
tree-format                   0.1.2
typing-extensions             3.7.4.3
urllib3                       1.25.10
virtualenv                    20.0.33
wcwidth                       0.2.5
webencodings                  0.5.1
websocket-client              0.57.0
xmltodict                     0.12.0
yamllint                      1.25.0

I have a similar problem.
All my Travis checks are failing suddenly.

With molecule 3.0.8 the builds are successful again.

For Example

$ pip --version
pip 20.1 from /home/travis/virtualenv/python3.6.10/lib/python3.6/site-packages/pip (python 3.6)
travis_fold:start:install

$ pip install molecule docker ansible-lint flake8
Collecting molecule
  Downloading molecule-3.1.2-py3-none-any.whl (235 kB)

Collecting docker
  Downloading docker-4.3.1-py2.py3-none-any.whl (145 kB)

Collecting ansible-lint
  Downloading ansible_lint-4.3.5-py2.py3-none-any.whl (77 kB)

...

molecule test
---
dependency:
  name: galaxy
driver:
  name: docker
lint: 'set -e

  yamllint .

  ansible-lint .

  flake8

  '
platforms:
  - command: ${MOLECULE_DOCKER_COMMAND:-""}
    image: geerlingguy/docker-${MOLECULE_DISTRO:-debian10}-ansible:latest
    name: instance
    pre_build_image: true
    privileged: true
    volumes:
      - /sys/fs/cgroup:/sys/fs/cgroup:ro
provisioner:
  config_options:
    defaults:
      deprecation_warnings: true
      stdout_callback: yaml
  name: ansible
scenario:
  test_sequence:
    - lint
    - destroy
    - dependency
    - syntax
    - create
    - prepare
    - converge
    - destroy
verifier:
  name: testinfra

ERROR: Failed to pre-validate.

{'driver': [{'name': ['unallowed value docker']}]}
The command "molecule test" exited with 1.

Done. Your build exited with 1.

@bodsch try installing molecule-docker with pip, that should fix the issue

@Thulium-Drake would it be possible for you try this as well? The error message shouldn't appear when trying to poll for the version, but just to see if it fixes the issue for you as well

Ofcourse, see below:

$ docker run -it --entrypoint /bin/sh quay.io/ansible/molecule:3.1.2
/ # pip install molecule-docker
Requirement already satisfied: molecule-docker in /usr/lib/python3.8/site-packages (0.2)
Requirement already satisfied: selinux; sys_platform == "linux" in /usr/lib/python3.8/site-packages (from molecule-docker) (0.2.1)
Requirement already satisfied: docker>=4.3.1 in /usr/lib/python3.8/site-packages (from molecule-docker) (4.3.1)
Collecting molecule>=3.0.2
  Downloading molecule-3.1.3-py3-none-any.whl (235 kB)
     |鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅| 235 kB 3.8 MB/s 
Requirement already satisfied: setuptools>=39.0 in /usr/lib/python3.8/site-packages (from selinux; sys_platform == "linux"->molecule-docker) (50.3.0)
Requirement already satisfied: distro>=1.3.0 in /usr/lib/python3.8/site-packages (from selinux; sys_platform == "linux"->molecule-docker) (1.5.0)
Requirement already satisfied: six>=1.4.0 in /usr/lib/python3.8/site-packages (from docker>=4.3.1->molecule-docker) (1.15.0)
Requirement already satisfied: websocket-client>=0.32.0 in /usr/lib/python3.8/site-packages (from docker>=4.3.1->molecule-docker) (0.57.0)
Requirement already satisfied: requests!=2.18.0,>=2.14.2 in /usr/lib/python3.8/site-packages (from docker>=4.3.1->molecule-docker) (2.24.0)
Requirement already satisfied: cerberus>=1.3.1 in /usr/lib/python3.8/site-packages (from molecule>=3.0.2->molecule-docker) (1.3.2)
Requirement already satisfied: pexpect<5,>=4.6.0 in /usr/lib/python3.8/site-packages (from molecule>=3.0.2->molecule-docker) (4.8.0)
Requirement already satisfied: pluggy<1.0,>=0.7.1 in /usr/lib/python3.8/site-packages (from molecule>=3.0.2->molecule-docker) (0.13.1)
Requirement already satisfied: colorama>=0.3.9 in /usr/lib/python3.8/site-packages (from molecule>=3.0.2->molecule-docker) (0.4.3)
Requirement already satisfied: cookiecutter!=1.7.1,>=1.6.0 in /usr/lib/python3.8/site-packages (from molecule>=3.0.2->molecule-docker) (1.7.2)
Requirement already satisfied: yamllint<2,>=1.15.0 in /usr/lib/python3.8/site-packages (from molecule>=3.0.2->molecule-docker) (1.25.0)
Requirement already satisfied: click-help-colors>=0.6 in /usr/lib/python3.8/site-packages (from molecule>=3.0.2->molecule-docker) (0.8)
Requirement already satisfied: packaging in /usr/lib/python3.8/site-packages (from molecule>=3.0.2->molecule-docker) (20.4)
Requirement already satisfied: click>=7.0 in /usr/lib/python3.8/site-packages (from molecule>=3.0.2->molecule-docker) (7.1.2)
Requirement already satisfied: sh<1.14,>=1.13.1 in /usr/lib/python3.8/site-packages (from molecule>=3.0.2->molecule-docker) (1.13.1)
Requirement already satisfied: Jinja2>=2.10.1 in /usr/lib/python3.8/site-packages (from molecule>=3.0.2->molecule-docker) (2.11.2)
Requirement already satisfied: tree-format>=0.1.2 in /usr/lib/python3.8/site-packages (from molecule>=3.0.2->molecule-docker) (0.1.2)
Requirement already satisfied: click-completion>=0.5.1 in /usr/lib/python3.8/site-packages (from molecule>=3.0.2->molecule-docker) (0.5.2)
Requirement already satisfied: tabulate>=0.8.4 in /usr/lib/python3.8/site-packages (from molecule>=3.0.2->molecule-docker) (0.8.7)
Requirement already satisfied: paramiko<3,>=2.5.0 in /usr/lib/python3.8/site-packages (from molecule>=3.0.2->molecule-docker) (2.7.2)
Requirement already satisfied: PyYAML<6,>=5.1 in /usr/lib/python3.8/site-packages (from molecule>=3.0.2->molecule-docker) (5.3.1)
Requirement already satisfied: chardet<4,>=3.0.2 in /usr/lib/python3.8/site-packages (from requests!=2.18.0,>=2.14.2->docker>=4.3.1->molecule-docker) (3.0.4)
Requirement already satisfied: idna<3,>=2.5 in /usr/lib/python3.8/site-packages (from requests!=2.18.0,>=2.14.2->docker>=4.3.1->molecule-docker) (2.10)
Requirement already satisfied: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /usr/lib/python3.8/site-packages (from requests!=2.18.0,>=2.14.2->docker>=4.3.1->molecule-docker) (1.25.10)
Requirement already satisfied: binaryornot>=0.4.4 in /usr/lib/python3.8/site-packages (from cookiecutter!=1.7.1,>=1.6.0->molecule>=3.0.2->molecule-docker) (0.4.4)
Requirement already satisfied: poyo>=0.5.0 in /usr/lib/python3.8/site-packages (from cookiecutter!=1.7.1,>=1.6.0->molecule>=3.0.2->molecule-docker) (0.5.0)
Requirement already satisfied: python-slugify>=4.0.0 in /usr/lib/python3.8/site-packages (from cookiecutter!=1.7.1,>=1.6.0->molecule>=3.0.2->molecule-docker) (4.0.1)
Requirement already satisfied: MarkupSafe<2.0.0 in /usr/lib/python3.8/site-packages (from cookiecutter!=1.7.1,>=1.6.0->molecule>=3.0.2->molecule-docker) (1.1.1)
Requirement already satisfied: jinja2-time>=0.2.0 in /usr/lib/python3.8/site-packages (from cookiecutter!=1.7.1,>=1.6.0->molecule>=3.0.2->molecule-docker) (0.2.0)
Requirement already satisfied: pathspec>=0.5.3 in /usr/lib/python3.8/site-packages (from yamllint<2,>=1.15.0->molecule>=3.0.2->molecule-docker) (0.8.0)
Requirement already satisfied: pyparsing>=2.0.2 in /usr/lib/python3.8/site-packages (from packaging->molecule>=3.0.2->molecule-docker) (2.4.7)
Requirement already satisfied: shellingham in /usr/lib/python3.8/site-packages (from click-completion>=0.5.1->molecule>=3.0.2->molecule-docker) (1.3.2)
Requirement already satisfied: bcrypt>=3.1.3 in /usr/lib/python3.8/site-packages (from paramiko<3,>=2.5.0->molecule>=3.0.2->molecule-docker) (3.2.0)
Requirement already satisfied: cryptography>=2.5 in /usr/lib/python3.8/site-packages (from paramiko<3,>=2.5.0->molecule>=3.0.2->molecule-docker) (2.9.2)
Requirement already satisfied: pynacl>=1.0.1 in /usr/lib/python3.8/site-packages (from paramiko<3,>=2.5.0->molecule>=3.0.2->molecule-docker) (1.4.0)
Requirement already satisfied: text-unidecode>=1.3 in /usr/lib/python3.8/site-packages (from python-slugify>=4.0.0->cookiecutter!=1.7.1,>=1.6.0->molecule>=3.0.2->molecule-docker) (1.3)
Requirement already satisfied: arrow in /usr/lib/python3.8/site-packages (from jinja2-time>=0.2.0->cookiecutter!=1.7.1,>=1.6.0->molecule>=3.0.2->molecule-docker) (0.17.0)
Requirement already satisfied: cffi>=1.1 in /usr/lib/python3.8/site-packages (from bcrypt>=3.1.3->paramiko<3,>=2.5.0->molecule>=3.0.2->molecule-docker) (1.14.3)
Requirement already satisfied: python-dateutil>=2.7.0 in /usr/lib/python3.8/site-packages (from arrow->jinja2-time>=0.2.0->cookiecutter!=1.7.1,>=1.6.0->molecule>=3.0.2->molecule-docker) (2.8.1)
Requirement already satisfied: pycparser in /usr/lib/python3.8/site-packages (from cffi>=1.1->bcrypt>=3.1.3->paramiko<3,>=2.5.0->molecule>=3.0.2->molecule-docker) (2.20)
ERROR: molecule-hetznercloud 0.2.2 has requirement molecule<=3.1,>=3.0.4, but you'll have molecule 3.1.3 which is incompatible.
Installing collected packages: molecule
  Attempting uninstall: molecule
    Found existing installation: molecule 0.0.0
    Uninstalling molecule-0.0.0:
      Successfully uninstalled molecule-0.0.0
Successfully installed molecule-3.1.3
/ # molecule --version
Failed to load driver entry point Traceback (most recent call last):
  File "/usr/lib/python3.8/site-packages/molecule_containers/driver.py", line 9, in <module>
    from molecule.driver.docker import Docker as DriverBackend
ModuleNotFoundError: No module named 'molecule.driver.docker'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.8/site-packages/molecule/api.py", line 45, in drivers
    pm.load_setuptools_entrypoints("molecule.driver")
  File "/usr/lib/python3.8/site-packages/pluggy/manager.py", line 299, in load_setuptools_entrypoints
    plugin = ep.load()
  File "/usr/lib/python3.8/importlib/metadata.py", line 77, in load
    module = import_module(match.group('module'))
  File "/usr/lib/python3.8/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 783, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/usr/lib/python3.8/site-packages/molecule_containers/driver.py", line 11, in <module>
    from molecule.driver.podman import Podman as DriverBackend
ModuleNotFoundError: No module named 'molecule.driver.podman'

molecule 3.1.3
   ansible==2.10.2 python==3.8

There's a few issues:

  • molecule-hetznercloud wants to be installed but can't
  • molecule-docker is installed in the image, yet it still complains about the missing module
  • same goes for molecule-podman, it is installed, yet unfindable

I also checked in /usr/lib/python3.8/site-packages all the files you'd think should be there, are there.

The same errors can be seen when requesting python to print all modules

# python3
Python 3.8.6 (default, Oct  5 2020, 00:23:48) 
[GCC 10.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> help('modules')

Please wait a moment while I gather a list of all available modules...

Failed to load driver entry point Traceback (most recent call last):
  File "/usr/lib/python3.8/site-packages/molecule_containers/driver.py", line 9, in <module>
    from molecule.driver.docker import Docker as DriverBackend
ModuleNotFoundError: No module named 'molecule.driver.docker'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.8/site-packages/molecule/api.py", line 45, in drivers
    pm.load_setuptools_entrypoints("molecule.driver")
  File "/usr/lib/python3.8/site-packages/pluggy/manager.py", line 299, in load_setuptools_entrypoints
    plugin = ep.load()
  File "/usr/lib/python3.8/importlib/metadata.py", line 77, in load
    module = import_module(match.group('module'))
  File "/usr/lib/python3.8/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 783, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/usr/lib/python3.8/site-packages/molecule_containers/driver.py", line 11, in <module>
    from molecule.driver.podman import Podman as DriverBackend
ModuleNotFoundError: No module named 'molecule.driver.podman'

The Vagrant executable cannot be found. Please check if it is in the system path.
PIL                 binaryornot         jsonpatch           re
__future__          binascii            jsonpointer         readline
_abc                binhex              keystoneauth1       reprlib
_ast                bisect              keyword             requests
_asyncio            boto                lib2to3             requests_ntlm
_bisect             boto3               libcloud            requestsexceptions
_blake2             botocore            libfuturize         resource
_bootlocale         builtins            libpasteurize       retrying
_bz2                bz2                 libvirt             rich
_cffi_backend       cProfile            libvirt_lxc         rlcompleter
_codecs             cachecontrol        libvirt_qemu        runpy
_codecs_cn          calendar            libvirtaio          s3transfer
_codecs_hk          cerberus            libvirtmod          sched
_codecs_iso2022     certifi             libvirtmod_lxc      secrets
_codecs_jp          cffi                libvirtmod_qemu     select
_codecs_kr          cfgv                linecache           selectors
_codecs_tw          cgi                 locale              selinux
_collections        cgitb               lockfile            setuptools
_collections_abc    chardet             logging             sh
_compat_pickle      chunk               lzma                shellingham
_compression        click               mailbox             shelve
_contextvars        click_completion    mailcap             shlex
_crypt              click_help_colors   markupsafe          shutil
_csv                cmath               marshal             signal
_ctypes             cmd                 math                simplejson
_ctypes_test        code                mccabe              site
_curses             codecs              mimetypes           six
_curses_panel       codeop              mmap                slugify
_datetime           collections         modulefinder        smtpd
_dbm                colorama            molecule            smtplib
_decimal            colorsys            molecule_azure      sndhdr
_distutils_hack     common              molecule_containers snowballstemmer
_dummy_thread       commonmark          molecule_digitalocean socket
_elementtree        compileall          molecule_docker     socketserver
_functools          concurrent          molecule_ec2        sphinx
_gdbm               configparser        molecule_gce        sphinx_ansible_theme
_hashlib            contextlib          molecule_hetznercloud sphinx_rtd_theme
_heapq              contextlib2         molecule_libvirt    spwd
_imp                contextvars         molecule_lxd        sqlite3
_io                 cookiecutter        molecule_openstack  sre_compile
_json               copy                molecule_podman     sre_constants
_locale             copyreg             molecule_vagrant    sre_parse
_lsprof             crypt               more_itertools      ssl
_lzma               cryptography        msgpack             stat
_markupbase         csv                 multiprocessing     statistics
_md5                ctypes              munch               stevedore
_multibytecodec     curses              nacl                string
_multiprocessing    dataclasses         netifaces           stringprep
_opcode             datetime            netrc               struct
_operator           dateutil            nntplib             subprocess
_osx_support        dbm                 nodeenv             sunau
_pickle             decimal             notfound            symbol
_posixshmem         decorator           ntlm_auth           symtable
_posixsubprocess    difflib             ntpath              sys
_py_abc             dis                 nturl2path          sysconfig
_pydecimal          distlib             numbers             syslog
_pyio               distro              olefile             tabnanny
_pytest             distutils           opcode              tabulate
_queue              docker              openstack           tarfile
_random             dockerpycreds       operator            telnetlib
_ruamel_yaml        doctest             optparse            tempfile
_sha1               docutils            ordered_set         termios
_sha256             dogpile             os                  testinfra
_sha3               dummy_threading     os_service_types    text_unidecode
_sha512             easy_install        ossaudiodev         textwrap
_signal             email               packaging           this
_sitebuiltins       encodings           paramiko            threading
_socket             ensurepip           parser              time
_sqlite3            entrypoints         past                timeit
_sre                enum                pathlib             token
_ssl                errno               pathspec            tokenize
_stat               faulthandler        pbr                 toml
_statistics         fcntl               pdb                 trace
_string             filecmp             pep517              traceback
_strptime           fileinput           pexpect             tracemalloc
_struct             filelock            pickle              tree_format
_symtable           flake8              pickletools         tty
_sysconfigdata__linux_x86_64-linux-gnu fnmatch             pip                 turtle
_testbuffer         formatter           pipes               turtledemo
_testcapi           fractions           pkg_resources       types
_testimportmultiple ftplib              pkgutil             typing
_testinternalcapi   functools           platform            typing_extensions
_testmultiphase     future              plistlib            unicodedata
_thread             gc                  pluggy              unittest
_threading_local    genericpath         poplib              urllib
_tracemalloc        getopt              posix               urllib3
_warnings           getpass             posixpath           uu
_weakref            gettext             poyo                uuid
_weakrefset         glob                pprint              vagrant
_xxsubinterpreters  grp                 pre_commit          venv
_xxtestfuzz         gzip                profile             virtualenv
abc                 hashlib             progress            warnings
aifc                hcloud              pstats              wave
alabaster           heapq               psutil              wcwidth
ansible             hmac                pty                 weakref
ansible_test        html                ptyprocess          webbrowser
ansiblelint         html5lib            pwd                 webencodings
antigravity         http                py                  websocket
appdirs             identify            py_compile          winrm
argparse            idna                pyasn1              wsgiref
array               imagesize           pyclbr              xdrlib
arrow               imaplib             pycodestyle         xml
asn1crypto          imghdr              pycparser           xmlrpc
ast                 imp                 pydoc               xmltodict
asynchat            importlib           pydoc_data          xxlimited
asyncio             iniconfig           pyexpat             xxsubtype
asyncore            inspect             pyflakes            yaml
atexit              io                  pygments            yamllint
atomicwrites        ipaddress           pyparsing           zipapp
attr                iso8601             pytest              zipfile
audioop             itertools           pytoml              zipimport
babel               jinja2              pytz                zlib
base64              jinja2_time         queue               
bcrypt              jmespath            quopri              
bdb                 json                random              

Enter any module name to get more help.  Or, type "modules spam" to search
for modules whose name or summary contain the string "spam".

It almost strikes me that molecule.driver.podman should be molecule_podman etc..

As I failed to receive help on keeping the container image usable and I do not use it anywhere in production, I am very close into deciding to completely remove the docker image from molecule pipelines. Nurturing it requires time I do not have.

If someone wants to step in to help, I would really appreciate the help.

I removed the unmaintained drivers but there is still work to be done before I can tag a new release.

@bodsch try installing molecule-docker with pip, that should fix the issue

Job is running and looks good so far. :)
Thanks!

The only mention of installing anything docker related that I can find in the documentation refers to pip install molecule[docker]... Where is this molecule-docker documented?

Fixed in 3.1.4.

@chilicheech both methods are valid. First one relies on molecule extra name docker which mentions molecule-docker as dependency.

3.1.4 works! Sad to hear about the Docker image leaving us, but I get where you're coming from. I also have made a custom image (I used to base it off the molecule image on quay.io, but I am switching it around)

Thanks for all the hard work on Molecule itself!

P.S. FWIW, this is the Dockerfile I am using now:

FROM python:latest

# Install Ansible Tools & Molecule
RUN pip3 install molecule[docker] ansible ansible-lint ansible-merge-vars

# Install Docker
RUN apt-get update -yq \
 && DEBIAN_FRONTEND=noninteractive \
    apt-get install -y \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common

RUN curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -
RUN echo "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable" >> /etc/apt/sources.list
RUN apt-get update -yq \
 && DEBIAN_FRONTEND=noninteractive \
    apt-get install -y \
    docker-ce-cli

Was this page helpful?
0 / 5 - 0 ratings

Related issues

surfer190 picture surfer190  路  3Comments

asg1612 picture asg1612  路  4Comments

tadeboro picture tadeboro  路  4Comments

r0ckyte picture r0ckyte  路  5Comments

srizzling picture srizzling  路  3Comments