Plans to natively support Ansible 3+?

All of the foreman documentation I can find references ansible 2.9 which has been EOL for a few months now as well as has had issues when I try to use playbooks with windows modules in them.

This requires that I manually install ansible using pip3, which tends to lead to headaches when upgrading foreman as foreman will tend to discretely install the yum package (which is based on the EOL python3.6).
I usually have to go through the following PITA process to upgrade foreman and avoid things breaking horribly.

  • Remove current ansible install and any pywinrm modules
  • Install the 2.9/Python3.6 Ansible
  • Upgrade Foreman
  • Remove the 2.9/Python3.6 Ansible
  • Reinstall Ansible and pywinrm modules via pip3

References:
https://docs.theforeman.org/
https://docs.theforeman.org/3.2/Quickstart_Guide/index-katello.html
https://docs.theforeman.org/nightly/Quickstart_Guide/index-katello.html

I think one of the main issues is that there don’t seem to be any official RPM packages for Ansible 3+ (not any that I’m aware of, which annoys me as it makes life difficult :frowning: )

EDIT: I’m blind… :slight_smile: https://centos.pkgs.org/8-stream/centos-appstream-x86_64/ansible-core-2.12.2-2.el8.x86_64.rpm.html

ansible looks like it/s 2.1.2 opposed to 3.X+ ? looks like ansible 5.X was installed when I install via pip3

Ansible 2.9 is still listed as supported upstream.

Nevertheless, when you’re deploying on CentOS Stream 8 (and whichever EL-rebuild once 8.6 release hits), you’ll be getting ansible-core 2.12.z which is the base for Ansible 5.x (see Installing Ansible — Ansible Documentation and Ansible 3.0.0 Q&A and Releases and maintenance — Ansible Documentation), and we support this as being “the Ansible” used by Foreman.

However, there are currently no Ansible community RPMs available (and I am not aware of any plans from Ansible to do so), so you will have to add the missing collections via ansible-galaxy after the fact.

1 Like

It’s been a few months now and Ansible 2.9 is officially EOL:

This is true for upstream (but not for e.g. Red Hat packages you get as part of your subscription).

But is there a question here? We support Ansible 2.9, we support Ansible Core 2.12, we support Ansible Core 2.13.

Sorry, I wasn’t aware of the support for Ansible Core 2.13.
I am working the the theforeman.operations ansible roles right now and
they explicitly install ansible 2.9 repos, which made me assume only 2.9 is supported.

That collection has a role for Ansible repos for the time when there was no Ansible in BaseOS for CentOS/RHEL, now you can just avoid that repo (and we probably should drop that role).