Cannot satisfy RHEL 8 dependencies for ansible-core.
BloodBlight opened this issue · 2 comments
Bug Report
What happened:
pip3 requirements install fails.
What you expected to happen:
pip3 requirements to install.
How to reproduce it (minimal and precise):
Running:
pip3 install -r requirements.txt
Results in:
Could not find a version that satisfies the requirement ansible-core<2.13,>=2.12 (from -r requirements.txt (line 2)) (from versions: 0.0.1a1, 2.11.0b1, 2.11.0b2, 2.11.0b3, 2.11.0b4, 2.11.0rc1, 2.11.0rc2, 2.11.0, 2.11.1rc1, 2.11.1, 2.11.2rc1, 2.11.2, 2.11.3rc1, 2.11.3, 2.11.4rc1, 2.11.4, 2.11.5rc1, 2.11.5, 2.11.6rc1, 2.11.6, 2.11.7rc1, 2.11.7, 2.11.8rc1, 2.11.8, 2.11.9rc1, 2.11.9, 2.11.10rc1, 2.11.10, 2.11.11rc1, 2.11.11, 2.11.12rc1, 2.11.12)
No matching distribution found for ansible-core<2.13,>=2.12 (from -r requirements.txt (line 2))
Looks like the oldest version available in the ansible-2.8-for-rhel-8-x86_64-rpms repo is 2.14.2:
$ yum info ansible-core
Updating Subscription Management repositories.
Last metadata expiration check: 0:02:30 ago on Wed 12 Jul 2023 07:11:08 AM PDT.
Available Packages
Name : ansible-core
Version : 2.14.2
Release : 4.el8_8
Architecture : x86_64
Size : 3.4 M
Source : ansible-core-2.14.2-4.el8_8.src.rpm
Repository : rhel-8-for-x86_64-appstream-rpms
Summary : SSH-based configuration management, deployment, and task execution system
URL : http://ansible.com
License : GPLv3+
Description : Ansible is a radically simple model-driven configuration management,
: multi-node deployment, and remote task execution system. Ansible works
: over SSH and does not require any software or daemons to be installed
: on remote nodes. Extension modules can be written in any language and
: are transferred to managed machines automatically.
Probably just needs a version bump.
Share your group_vars files, inventory and full ceph-ansibe log
Environment:
- OS (e.g. from /etc/os-release): Red Hat Enterprise Linux 8.8 (Ootpa)
- Kernel (e.g.
uname -a
): Linux 4.18.0-477.13.1.el8_8.x86_64 #1 SMP Thu May 18 10:27:05 EDT 2023 x86_64 x86_64 x86_64 GNU/Linux - Docker version if applicable (e.g.
docker version
): n/a - Ansible version (e.g.
ansible-playbook --version
): n/a - ceph-ansible version (e.g.
git head or tag or stable branch
): origin/main - Ceph version (e.g.
ceph -v
): n/a
Based on my config (currently working on Rocky9.2 but tried that before with RHEL 8 or Rocky8) got the same issue as yours. It seems the ansible binary package from the RHEL app stream or epel is not compatible with the ceph-ansible.
My current config -> cat requirements.txt
ansible-core>=2.12,<2.13
netaddr
six
It gives:
pip3 list | grep ansible
ansible-base 2.10.17
ansible-core 2.12.10
ansible-test 1.0.1
But you can try as well, as this works as well
ansible >=2.10, <2.13,!=2.9.10
netaddr
six
Prior to installing it via pip3, I just uninstall any ansible packages to clear it up.
dnf remove ansible ansible-core
pip3 uninstall ansible ansible-core
pip uninstall ansible ansible-core
Do lastly (double check if the binary package is still there ansible --version
, if still executes then try to remove/unlink the binary file -> whereis ansible
).
pip3 install -r requirements.txt
ceph-ansible version (e.g. git head or tag or stable branch): origin/main
the cutting edge of ceph-ansible@main is not intended to be run against RHEL OS anyway