As part of working towards using clang, @abmusse and I got together to thrash out Ansible changes to install clang on AIX. Unfortunately we quickly discovered issues trying to run the playbooks for AIX that are unrelated to any modifications we were adding:
- Some already (
yum) installed package has an upgrade that when installed breaks yum. AIX Toolbox now recommends dnf over yum.
- One (or more) updated packages require OpenSSL 3. We've documented manual steps for this (as OpenSSL is managed by
installp and not yum/dnf). Annoyingly the packaging has changed for the tarballs (there's no longer a top level directory).
- Ansible does not detect
dnf on AIX. We've been able to work around it by explicitly setting pkg_mgr with ansible.builtin.set_fact.
- The Ansible
dnf task needs python3-dnf (installable via dnf) but on AIX 7.2 this is a 32-bit package that requires us to run Ansible on the AIX machine in /opt/freeware/libexec/python3 (instead of /usr/bin/python3) as that is the 32-bit one (as opposed to 64-bit).
- When using
dnf, Ansible fails to find gcc10-c++ (even when already installed on the system) which causes the playbook to fail. Running dnf on the command line does find the package and it's only this package (of the ones we are installing today) that has this issue. We need gcc 10 for Node.js 20 and 22.
As part of working towards using clang, @abmusse and I got together to thrash out Ansible changes to install
clangon AIX. Unfortunately we quickly discovered issues trying to run the playbooks for AIX that are unrelated to any modifications we were adding:yum) installed package has an upgrade that when installed breaksyum. AIX Toolbox now recommends dnf over yum.installpand notyum/dnf). Annoyingly the packaging has changed for the tarballs (there's no longer a top level directory).dnfon AIX. We've been able to work around it by explicitly settingpkg_mgrwithansible.builtin.set_fact.dnftask needspython3-dnf(installable viadnf) but on AIX 7.2 this is a 32-bit package that requires us to run Ansible on the AIX machine in/opt/freeware/libexec/python3(instead of/usr/bin/python3) as that is the 32-bit one (as opposed to 64-bit).dnf, Ansible fails to findgcc10-c++(even when already installed on the system) which causes the playbook to fail. Runningdnfon the command line does find the package and it's only this package (of the ones we are installing today) that has this issue. We need gcc 10 for Node.js 20 and 22.