![剧本给出语法错误](https://linux22.com/image/125726/%E5%89%A7%E6%9C%AC%E7%BB%99%E5%87%BA%E8%AF%AD%E6%B3%95%E9%94%99%E8%AF%AF.png)
我正在运行这个剧本,但它在最后一个任务中失败了。从 ubuntu 主机运行这个,
---
- hosts: all
become: yes
tasks:
- name: Copy certificate files.
copy:
src: "{{ item.src }}"
dest: "{{ item.dest }}"
owner: root
group: root
mode: 0644
with_items:
- { src: "/registry_certs/domain.crt", dest: "/usr/local/share/ca-certificates/ca.crt" }
- command: sudo apt-get install --reinstall ca-certificates
- command: sudo update-ca-certificates
- name: "just force systemd to reread configs (2.4 and above)"
systemd:
name: "{{ item }}"
state: started
daemon_reload: yes
with_items:
- docker
- kubelet
错误
ubuntu@kops:/etc/ansible$ sudo ansible-playbook certificate_new.yml -l aws --syntax-check
ERROR! no action detected in task
The error appears to have been in '/etc/ansible/certificate_new.yml': line 18, column 6, but may
be elsewhere in the file depending on the exact syntax problem.
The offending line appears to be:
- name: "just force systemd to reread configs (2.4 and above)"
^ here
答案1
根据Ansible
语法,在 之后tasks:
,您需要缩进- name:
和下面的其他任务,多一个空格,如下所示:
---
- hosts: all
become: yes
tasks:
- name: Copy certificate files.