【发布时间】:2019-05-29 11:20:05
【问题描述】:
执行 parent.yml,然后调用 child.yml playbook 以使用动态变量执行。
来自 parent.yml 的变量不会插入到 child.yml 剧本中。如果我使用正确的语法,请纠正我?
父.yml
- name: Main playbook to call MySQL backup
hosts: localhost
gather_facts: no
tasks:
- include_task: child.yml
vars:
var1: "{{ item.name }}"
var2: "{{ item.db_name }}"
with_items:
- { name: '10.10.10.01', db_name: 'prod1' }
- { name: '10.10.10.02', db_name: 'prod2' }
child.yml(从托管数据库获取 mysqldump)
- name: MySQL dump
hosts: localhost
#gather_facts: no
#vars:
# v1: "{{ var1 }}"
# v2: "{{ var2 }}"
tasks:
- name: Executing the shell script
shell: 'mysqldump -h "{{ var1 }}" -u"ansi" -p"*****" "{{ var2 }}"| gzip > /tmp/mysql_dump/"{{ var2 }}"_`date +%Y%m%d-%H%M`.gz'
致命:[127.0.0.1]:失败! => {"reason": "在任务中未检测到任何操作。这通常表示模块名称拼写错误,或模块路径不正确。\n\n错误似乎在 '/home/ansible/playbooks/DBpatch/Linux/child. yml':第 1 行,第 3 列,但可能\n位于文件中的其他位置,具体取决于确切的语法问题。\n\n违规行似乎是:\n\n\n- name: MySQL dump\n ^ here\ n"}
【问题讨论】:
标签: ansible ansible-2.x