# Ansible-playbook succeeds with no changes but i686 package not installed

**URL:** <https://forum.ansible.com/t/ansible-playbook-succeeds-with-no-changes-but-i686-package-not-installed/6240>\
**Category:** Get Help\
**Tags:** rhel, ansible-core\
**Created:** [June 7, 2024, 11:29am UTC](https://forum.ansible.com/t/ansible-playbook-succeeds-with-no-changes-but-i686-package-not-installed/6240 "2024-06-07T11:29:25Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![shareefj](https://avatars.discourse-cdn.com/v4/letter/s/b2d939/32.png) [@shareefj](https://forum.ansible.com/u/shareefj)\
**Post date:** [June 7, 2024, 11:29am UTC](https://forum.ansible.com/t/ansible-playbook-succeeds-with-no-changes-but-i686-package-not-installed/6240/1 "2024-06-07T11:29:25Z")

</div>

Hi there,

I’m a new user to Ansbile so this might well be user error but I’m seeing `ansible-playbook` complete with no issues but not update the dnf package. Edit: after a bit of debug as I wrote this issue, it looks like the problem is only with i686 packages.

Ansible version: core 2.17.0

My playbook looks like:

```auto
---
- hosts: rhel
  become: yes

  tasks:
    - name: RHEL specific packages
      dnf:
        name:
          - glibc-devel
          - glibc-devel.i686
      when: ansible_facts['os_family'] == 'RedHat'

```

and my invokation and stdout looks like:

```auto
$ ansible-playbook playbooks/test.yaml -K
BECOME password:
[WARNING]: Invalid characters were found in group names but not replaced, use -vvvv to see details

PLAY [rhel] ********************************************************************************************************************************************************************************************************************************

TASK [Gathering Facts] *********************************************************************************************************************************************************************************************************************
[WARNING]: Platform linux on host rhel-dev.nu-quantum.com is using the discovered Python interpreter at /usr/bin/python3.9, but future installation of another Python interpreter could change the meaning of that path. See
https://docs.ansible.com/ansible-core/2.17/reference_appendices/interpreter_discovery.html for more information.
ok: [rhel-dev.nu-quantum.com]

TASK [RHEL specific packages] **************************************************************************************************************************************************************************************************************
ok: [rhel-dev.nu-quantum.com]

PLAY RECAP *********************************************************************************************************************************************************************************************************************************
rhel-dev.nu-quantum.com : ok=2 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0

```

Yet when I check on the host I can see:

```auto
[shareefj@rhel-dev ~]$ sudo dnf info glibc-devel
[sudo] password for shareefj:
Updating Subscription Management repositories.
Last metadata expiration check: 0:24:34 ago on Fri 07 Jun 2024 12:01:36 BST.
Installed Packages
Name : glibc-devel
Version : 2.34
Release : 100.el9_4.2
Architecture : x86_64
Size : 37 k
Source : glibc-2.34-100.el9_4.2.src.rpm
Repository : @System
From repo : rhel-9-for-x86_64-appstream-rpms
Summary : Object files for development using standard C libraries.
URL : http://www.gnu.org/software/glibc/
License : LGPLv2+ and LGPLv2+ with exceptions and GPLv2+ and GPLv2+ with exceptions and BSD and Inner-Net and ISC and Public Domain and GFDL
Description : The glibc-devel package contains the object files necessary
             : for developing programs which use the standard C libraries (which are
             : used by nearly all programs). If you are developing programs which
             : will use the standard C libraries, your system needs to have these
             : standard object files available in order to create the
             : executables.
             :
             : Install glibc-devel if you are going to develop programs which will
             : use the standard C libraries.

Available Packages
Name : glibc-devel
Version : 2.34
Release : 100.el9_4.2
Architecture : i686
Size : 43 k
Source : glibc-2.34-100.el9_4.2.src.rpm
Repository : rhel-9-for-x86_64-appstream-rpms
Summary : Object files for development using standard C libraries.
URL : http://www.gnu.org/software/glibc/
License : LGPLv2+ and LGPLv2+ with exceptions and GPLv2+ and GPLv2+ with exceptions and BSD and Inner-Net and ISC and Public Domain and GFDL
Description : The glibc-devel package contains the object files necessary
             : for developing programs which use the standard C libraries (which are
             : used by nearly all programs). If you are developing programs which
             : will use the standard C libraries, your system needs to have these
             : standard object files available in order to create the
             : executables.
             :
             : Install glibc-devel if you are going to develop programs which will
             : use the standard C libraries.

[shareefj@rhel-dev ~]$ sudo dnf info glibc-devel.i686
Updating Subscription Management repositories.
Last metadata expiration check: 0:24:39 ago on Fri 07 Jun 2024 12:01:36 BST.
Available Packages
Name : glibc-devel
Version : 2.34
Release : 100.el9_4.2
Architecture : i686
Size : 43 k
Source : glibc-2.34-100.el9_4.2.src.rpm
Repository : rhel-9-for-x86_64-appstream-rpms
Summary : Object files for development using standard C libraries.
URL : http://www.gnu.org/software/glibc/
License : LGPLv2+ and LGPLv2+ with exceptions and GPLv2+ and GPLv2+ with exceptions and BSD and Inner-Net and ISC and Public Domain and GFDL
Description : The glibc-devel package contains the object files necessary
             : for developing programs which use the standard C libraries (which are
             : used by nearly all programs). If you are developing programs which
             : will use the standard C libraries, your system needs to have these
             : standard object files available in order to create the
             : executables.
             :
             : Install glibc-devel if you are going to develop programs which will
             : use the standard C libraries.

[shareefj@rhel-dev ~]$

```

Is this a bug or do I need to do something else to allow Ansible to install i686 packages?

Thanks, Shareef.

---

<div class="post-metadata">

**Author:** ![chris](https://sea1.discourse-cdn.com/ansible/user_avatar/forum.ansible.com/chris/32/293_2.png) [@chris](https://forum.ansible.com/u/chris)\
**Post date:** [June 7, 2024, 11:56am UTC](https://forum.ansible.com/t/ansible-playbook-succeeds-with-no-changes-but-i686-package-not-installed/6240/2 "2024-06-07T11:56:25Z")

</div>

I’m afraid I’m not a RedHat user these days, but on Debian / Ubuntu one would first [need to add the architecture](https://superuser.com/a/742163) prior to installing a package, the package architecture in this case would be added to the package name separated with a colon, something like this:

```yaml
- name: Architecture i386 enabled
  ansible.builtin.command: dpkg --add-architecture i386

- name: Linux support headers for userspace development present for i386 and x86_64
  ansbile.builtin.apt:
    pkg:
      - linux-libc-dev
      - linux-libc-dev:i386

```

Perhaps something like this is also needed for RedHat based distros?

---

<div class="post-metadata">

**Author:** ![shareefj](https://avatars.discourse-cdn.com/v4/letter/s/b2d939/32.png) [@shareefj](https://forum.ansible.com/u/shareefj)\
**Post date:** [June 7, 2024, 12:08pm UTC](https://forum.ansible.com/t/ansible-playbook-succeeds-with-no-changes-but-i686-package-not-installed/6240/3 "2024-06-07T12:08:15Z")

</div>

Thanks, I can add it manually without any further dnf magic. It’s just not being installed by Ansible.

Edit: and wouldn’t you expect an error if that were the case rather than failing silently?

---

<div class="post-metadata">

**Author:** ![shareefj](https://avatars.discourse-cdn.com/v4/letter/s/b2d939/32.png) [@shareefj](https://forum.ansible.com/u/shareefj)\
**Post date:** [June 12, 2024, 1:47pm UTC](https://forum.ansible.com/t/ansible-playbook-succeeds-with-no-changes-but-i686-package-not-installed/6240/4 "2024-06-12T13:47:23Z")

</div>

Confirmed bug: [ansible.builtin.dnf doesn't install i686 packages · Issue #83406 · ansible/ansible · GitHub](https://github.com/ansible/ansible/issues/83406)

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/ansible/original/1X/1882d9a01da5d8996a862359b0913cc568a39b84.svg) [@system](https://forum.ansible.com/u/system)\
**Post date:** [July 12, 2024, 1:48pm UTC](https://forum.ansible.com/t/ansible-playbook-succeeds-with-no-changes-but-i686-package-not-installed/6240/5 "2024-07-12T13:48:15Z")

</div>

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
