- name: Check repos apt_repository: repo="{{ item.repo }}" state={{ item.state }} with_items: - "{{ apt_repos }}"
在/defaults/mail.yml中:
apt_repos:
# Percona - { state: present,repo: 'deb http://repo.percona.com/apt wheezy main',keyserver: 'keyserver.ubuntu.com',key: '1C4CBDCDCD2EFD2A',needkey: True } - { state: present,repo: 'deb-src http://repo.percona.com/apt wheezy main',needkey: False }
当我尝试运行这个ansible-playbook时:
---- hosts: test roles: - db
我看到错误:
fatal: [10.10.10.10] => One or more undefined variables: 'unicode object' has no attribute 'repo'FATAL: all hosts have already @R_403_5138@ -- aborting
但我有另一个角色,具有相同的任务和变量,它完美地工作.怎么了?
解决方法 你想这样做:with_items: apt_repos
apt_repos是一个列表.通过引用它 – “{{apt_repos}}”额外 – 将其转换为列表列表.在这种情况下,您也不需要引号或括号 – 在这种情况下,这些几乎都是多余的.
@H_419_2@ 总结以上是内存溢出为你收集整理的linux – 为什么Ansible没有在变量中看到属性?全部内容,希望文章能够帮你解决linux – 为什么Ansible没有在变量中看到属性?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)