我有我的第一本剧本,但它失败了。我认为这是一个语法错误,但由于我不是编码器,我不知道为什么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
答案 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