【发布时间】:2017-07-13 22:18:50
【问题描述】:
我正在尝试使用 ansible 禁用我的服务器上的所有 repos,因此我正在尝试对一个目录中的多个文件进行替换,但似乎无法让它发挥作用!
tasks:
- name: get repo names
raw: find /etc/yum.repos.d/ -type f -name "*.repo"
register: repos
- name: disable all repos
replace: dest={{repos}} regexp="enabled=1" replace="enabled=0"
with_items: repos.stdout_lines
当我运行它时,我只是得到一个错误,就像它试图一次完成它们一样?如果是这样,我将如何拆分它们?
/etc/yum.repos.d/CentOS-Debuginfo.repo\r\n/etc/yum.repos.d/epel.repo\r\n/etc/yum.repos.d/CentOS-Base。 repo\r\n'} 不存在!",
更新:
- find:
paths: "/etc/yum.repos.d/"
patterns: "*.repo"
register: repos
- name: disable all repos
replace: dest={{items}} regexp="enabled=1" replace="enabled=0"
with_items: repos
新错误如下: "msg": "'args' 字段的值无效,似乎包含未定义的变量。错误是:'items' 未定义
好的,越来越近了!现在在禁用回购中收到此错误:
FAILED! => {
"failed": true,
"msg": "'dict object' has no attribute 'stdout_lines'"
}
【问题讨论】: