我正在尝试执行以下任务:
-name: Dump Server1 database to Server2
shell: 'mysqldump -h {{ server1_ip }} -u {{ mysql_user }} --protocol=tcp --password={{ mysql_passwd }} --single-transaction --set-gtid-purged=off {{server1_db}} table1 table2 table3 > dump.sql'
这个任务的想法是导出数据库结构和我想要的表的数据。在这个例子中我只放了 3 个表,但在现实生活中可能是 20 或 30 个表。所以,我的想法是做这样的事情:
将“table1 table2 table3”替换为“{{tables }}”之类的内容,然后使用多个值创建一个变量,如下所示:
tables:
- table1
- table2
- table3
...
有人知道做类似事情的正确方法吗?在句子中放置一个变量,并替换为变量中多个值的串联。
提前致谢!
最佳答案
如果您有表格
作为列表,例如:
tables:
- table1
- table2
- table3
然后做{{tables| join(' ') }}
将生成 table1 table2 table3
。
参见other useful filters在文档中。
关于mysql - 在ansible中连接变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44021333/