Recernly there were more requests to update the packages we install by default using the embedded dockferfile, which aim to make the containers fully manageable by ansible.
These involved installing a python version and rsync on a limited set of platforms.
Historically we did install python2 on centos-7 and python3 on centos-8 because these are the default platform pythons.
Still, more recently people asked about installing python3 everywhere. While I am supportive of this move I am confident that this would break some jobs for people that already adopted the embedded dockerfile (they do not have their own copy inside the scenario).
So, I decided to make a poll regarding what kind of approach you would want to adopt, please click on the one you want to be the default:
minimal - ansible will likely even fail to gather_facts, but it will still be able to run raw module, that would make quite hard to use containers for common role testing (unless you want to test one that provisions some basic stuff like python itself)mixed-python - also current behavior, which aims to install the platform default-python, something that is not always clear to define, some not having a preffered onepython3 - ths would prioritize python3 if available on that platfrom, we would install python2 only if we cannot install python3. It plays well with already EOL py27, but could impact some users that want to test very old platforms.Please click on the option you want to be the default to vote:
I see it's a bit late (already merged), but my opinion is that instances should not be modified by molecule itself.
I would like to be in control myself of what version of Python is installed. (Or any other decision).
If molecule modifies a system for me, my role may not work in other environments. The more molecule assumes things for me, the less likely my role will work on other environments.
Anyway, love Molecule, will make it work for me anyway, likely with the platforms.pre_build_image: yes or so.
@robertdebock You are right, it is important. Whatever we pick, I will assure we document options so users can enforce any modes they want, maybe even making the template creation more interactive.
BTW, I am really curious how you would review https://github.com/ansible-community/molecule/pull/2586 — feel free to comment there, it is related.
Most helpful comment
I see it's a bit late (already merged), but my opinion is that instances should not be modified by molecule itself.
I would like to be in control myself of what version of Python is installed. (Or any other decision).
If molecule modifies a system for me, my role may not work in other environments. The more molecule assumes things for me, the less likely my role will work on other environments.
Anyway, love Molecule, will make it work for me anyway, likely with the
platforms.pre_build_image: yesor so.