运行 一个 SELECT 带有 Ansible 任务的查询
Running a SELECT Query with an Ansible Task
在 Ansbile 的 mysql 数据库模块的 this 列表中,有一个用于创建数据库或创建用户等。
我想 运行 查询一个预先存在的 table 并使用该查询的结果来填充一个 Ansible 变量(IP 地址列表和节点类型)我会 运行 不同的任务,具体取决于节点类型。
如何在 Ansible 中完成?
这是大致的操作方法(但未经测试):
- name: Retrieve stuff from mysql
command: >
mysql --user=alice --password=topsecret dbname
--host=147.102.160.1 --batch --skip-column-names
--execute="SELECT stuff from stuff_table"
register: stuff
check_mode: no
changed_when: False
- name: Do something with stuff
debug: "{{ item }}"
with_items: stuff.stdout_lines
已记录 here。
在 Ansbile 的 mysql 数据库模块的 this 列表中,有一个用于创建数据库或创建用户等。
我想 运行 查询一个预先存在的 table 并使用该查询的结果来填充一个 Ansible 变量(IP 地址列表和节点类型)我会 运行 不同的任务,具体取决于节点类型。
如何在 Ansible 中完成?
这是大致的操作方法(但未经测试):
- name: Retrieve stuff from mysql
command: >
mysql --user=alice --password=topsecret dbname
--host=147.102.160.1 --batch --skip-column-names
--execute="SELECT stuff from stuff_table"
register: stuff
check_mode: no
changed_when: False
- name: Do something with stuff
debug: "{{ item }}"
with_items: stuff.stdout_lines
已记录 here。