我正在尝试禁用所有yum repos,并只启用1个repo来安装yum包。如何使用yum模块禁用所有repos?
试图使用disablerepo ='*'但不确定这是否是正确的方法
- name: Update the uek kernel pkg on gateways
yum:
name: "{{ packages }}"
disablerepo: "*"
enablerepo: test_iso
vars:
packages:
- kernel-uek
become_user: root
Ansible documentation建议您必须提供逗号分隔的repo id列表。
disablerepo:复制存储库以禁用安装/更新操作。这些回购将不会在交易之后持续存在。指定多个repos时,请用“,”分隔它们。从Ansible 2.7开始,这可以是列表而不是“,”分隔的字符串
文档中的示例:
- name: Install package with multiple repos disabled
yum:
name: sos
disablerepo: "epel,ol7_latest"
您可以考虑使用yum_repository模块作为替代方案:
# Example removing a repository and cleaning up metadata cache
- name: Remove repository (and clean up left-over metadata)
yum_repository:
name: epel
state: absent
notify: yum-clean-metadata