简单的playbook中的Ansible YAML语法错误

时间:2017-10-14 11:19:19

标签: ansible yaml

我有我的第一本剧本,但它失败了。我认为这是一个语法错误,但由于我不是编码器,我不知道为什么YAML会失败?是否与间距有关?

这就是我所拥有的:

---
- name: Update all packages to the latest version
    become: true
    apt:
      update_cache: yes       
      upgrade: dist

- name: Remove useless packages from the cache
    apt:
      autoclean: yes

- name: Remove dependencies that are no longer required
    apt:
      autoremove: yes
ERROR! Syntax Error while loading YAML.


The error appears to have been in '/home/pi/playbooks/update-apt.yml': line 3, column 11, but may
be elsewhere in the file depending on the exact syntax problem.

The offending line appears to be:

- name: Update all packages to the latest version
    become: true
          ^ here

1 个答案:

答案 0 :(得分:1)

首先:这不是剧本,因为它不包含剧本(必须包含hosts声明),但是任务。

其次:你的缩进被严重破坏 - 在YAML中保持声明正确对齐是很关键的(也就是说,你看到的错误不是YAML语法错误,而是由正确写入的不正确数据导致的Ansible错误YAML文件)。

如果你想在本地运行它,它应该或多或少看起来像这样:

---
- hosts: localhost
  connection: local
  tasks:
    - name: Update all packages to the latest version
      become: true
      apt:
        update_cache: yes       
        upgrade: dist
        autoclean: yes
        autoremove: yes
相关问题