今天写了一个Ansible自动化安装mysql的脚本,用copy模块复制多个文件的时候格式总是出错。错误的内容是格式不对,语法有问题。。最后通过查看文档解决了。
中文文档的循环部分的章节:http://www.ansible.com.cn/docs/playbooks_loops.html#standard-loops
正确写法是下面这个 (这个是roles/tasks/main.yml的一部分)
- name: copy mysql files
copy:
src: '{{ item.src }}'
dest: '{{ item.dest }}'
with_items:
- { src: 'mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz', dest: '/usr/local/src/MySQL5.7.tar.gz' }
- { src: 'install.sh', dest: '/usr/local/src/install.sh' }
- { src: 'my.cnf', dest: '/etc/my.cnf' }
- { src: 'mysql.sh', dest: '/etc/profile.d/mysql.sh' }