I am installing packages from a variable, which works fine with yum;
however, with apt I am having issues unless I change the format of the
variable. Perhaps apt still allows you to use "with_items" unlike yum
(which complains that the loop is deprecated in favor of a variable)? I
haven't tested that last speculation yet.
With yum I can install the following:
packages: "dbus, krb5-workstation, sssd, sssd-client, oddjob, samba-common,
samba-common-tools, chrony"
- name: ldap_users - Install required packages (RedHat-based)
yum:
name: "{{ packages }}"
state: present
skip_broken: yes
changed_when: false
ignore_errors: yes
when: ansible_os_family == "RedHat"
If I try something similar with apt, it always fails to install the
packages (usually says it can't find krb5-user).
Failing:
packages: "dbus, krb5-user, sssd, oddjob, samba-common, samba, chrony,
libpam-sss, libnss-sss, libnss-ldap"
- name: ldap_users - Install required packages (Debian-based)
apt:
name: "{{ packages }}"
update_cache: yes
state: present
changed_when: false
ignore_errors: yes
when: ansible_os_family == "Debian"
However, if I change my variable to the following for Ubuntu, it works fine:
packages:
- dbus
- krb5-user
- sssd
- oddjob
- samba-common
- samba
- chrony
- libpam-sss
- libnss-sss
- libnss-ldap
Just wondering if someone can explain that to me?
For thouroughness, here is the error I get:
The full traceback is:
WARNING: The below traceback may *not* be related to the actual failure.
File "/tmp/ansible_apt_payload_wK2PGK/__main__.py", line 345, in
package_status
pkg = cache[pkgname]
File "/usr/lib/python2.7/dist-packages/apt/cache.py", line 262, in
__getitem__
raise KeyError('The cache has no package named %r' % key)
fatal: [ansible-ub18]: FAILED! => {
"changed": false,
"invocation": {
"module_args": {
"allow_unauthenticated": false,
"autoclean": false,
"autoremove": false,
"cache_valid_time": 1,
"deb": null,
"default_release": null,
"dpkg_options": "force-confdef,force-confold",
"force": false,
"force_apt_get": false,
"install_recommends": null,
"name": "dbus, krb5-user, sssd, oddjob, samba-common, samba,
chrony, libpam-sss, libnss-sss, libnss-ldap",
"only_upgrade": false,
"package": [
"dbus",
" krb5-user",
" sssd",
" oddjob",
" samba-common",
" samba",
" chrony",
" libpam-sss",
" libnss-sss",
" libnss-ldap"
],
"purge": false,
"state": "present",
"update_cache": null,
"upgrade": null
}
},
"msg": "No package matching ' krb5-user' is available"
}
...ignoring
--
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 post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/ansible-project/730866df-3630-4c45-af73-cf4b43f47abf%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.