我正在尝试禁用所有的yum仓库,并且仅启用1个仓库来安装yum软件包。如何使用yum模块来禁用所有的仓库?
试图使用disablerepo ='*',但不确定这是否是正确的方法
- name: Update the uek kernel pkg on gateways
yum:
name: "{{ packages }}"
disablerepo: "*"
enablerepo: test_iso
vars:
packages:
- kernel-uek
become_user: root
答案 0 :(得分:0)
Ansible documentation建议您必须提供以逗号分隔的回购清单。
disablerepo :要禁用安装/更新操作的存储库的仿造。这些回购将不会在交易之后继续存在。指定多个存储库时,请用“,”分隔。 从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