Ansible错误陈述:' apt_repository'不是Play的有效属性

时间:2017-06-27 19:52:29

标签: ansible yaml

我正试图运行一个剧本: ansible-playbook roles/java/tasks/debian.yml -i /etc/ansible/hosts

,输出如下:

ERROR! 'apt_repository' is not a valid attribute for a Play

The error appears to have been in '/Users/awest1/Workspace/ansible-playbooks/roles/java/tasks/debian.yml': line 2, column 3, but may
be elsewhere in the file depending on the exact syntax problem.

The offending line appears to be:

---
- name: Setup oracle java deb repo
  ^ here

我正在尝试播放的yml文件有这个头:

- name: Setup oracle java deb repo
   apt_repository:
     repo: "ppa:webupd8team/java"
     update_cache: yes

我很感激任何指示。 感谢

2 个答案:

答案 0 :(得分:2)

您尝试将任务列表作为剧本运行。

要使其有效,请编写一个简单的剧本:

- hosts: all
  tasks:
    - include: roles/java/tasks/debian.yml

答案 1 :(得分:0)

您的输入

- name: Setup oracle java deb repo
   apt_repository:
     repo: "ppa:webupd8team/java"
     update_cache: yes

无效 YAML。

这是正确的(name的值是多行上的标量):

- name: Setup oracle java deb repo
   apt_repository
     repo "ppa:webupd8team/java"
     update_cache yes

这也是正确的(在2个缩进处进行适当的缩进):

- name: Setup oracle java deb repo
  apt_repository:
    repo: "ppa:webupd8team/java"
    update_cache: yes

你可能想要更晚一些。