Right. Combining all this information, I do see some sort of bootstrapping problem - at least in our workflow. Namely where to start with selecting what version of which package to use.
Currently we start with ansible==3.4.0. This is because of some issues with mitogen but that's not really relevant here. This is part of our requirements.txt which also contains the other packages that we need. Currently the file looks like: ansible==3.4.0 awscli boto boto3 cryptojwt dnspython gitpython natsort netaddr packaging pip-tools pylint pysaml2 python-ldap ruamel.yaml sshpubkeys wheel yamllint yq After pip installing this, the list of collections is exactly the list of https://github.com/ansible-community/ansible-build-data/blob/main/3/ansible-3.4.0.deps . Which is expected. But the venv also contains ansible-base 2.10.17, while https://github.com/ansible-community/ansible-build-data/blob/main/3/ansible-3.4.0.deps lists 2.10.9. This must be because ansible-3.4.0's setup.py contains: install_requires=[ 'ansible-base>=2.10.9,<2.11', ], OK. I understand that. Suppose I decide to forget about which ansible version to use, and instead use ansible-base. What version should I pick? And more importantly, what versions of collections go with that? I don't see a way to find out which collections go with a specific version of ansible-base/core. The repo at https://github.com/ansible-community/ansible-build-data is built with the ansible version as the starting point, so I can't really use that. It looks like I still have to use the ansible version as a starting point: 1. Pick ansible x.y.z 2. Look up which ansible-base/core version that needs from setup.py/install_requires, and install that. Looking at that I think I can take a short cut there and just do: ansible 3 => ansible-base==2.10.* ansible 4 => ansible-core==2.11.* ansible 5 => ansible-core==2.12.* 3. Based on the ansible version I picked, look up which collections go with that at https://github.com/ansible-community/ansible-build-data, and install those. So starting with *just* an ansible-base/core version (and no ansible version), there is no way to look up which collection versions go with that. I know that individual collections have specific requirements, so blindly installing the latest collections on, say ansible-base 2.10.17, will result in breakage. Is there maybe a repo similar to https://github.com/ansible-community/ansible-build-data, which is keyed off ansible-base/core versions, and that lists the collection versions with their own reported requirements? (From https://docs.ansible.com/ansible/latest/user_guide/collections_using.html#installing-an-older-version-of-a-collection I see that collections also have a version specifier such as ==, >=, etc) thx -- Dick Visser Trust & Identity Service Operations Manager GÉANT -- You received this message because you are subscribed to the Google Groups "Ansible Project" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/CAL8fbwON_CsAZG-NvJn%3Dk9U%2B7x-z04gY%2BdybaDYuhskucCPwYw%40mail.gmail.com.
