Ansible角色YAML错误

鲍勃

测试基本的Ansible角色设置,但在角色的第一行出现了错误main.yml,但是我相信这有些愚蠢

play.yml

- hosts: myhosts
  remote_user: myuser
  roles:
    - test

目录结构

play.yml
roles/test/tasks/main.yml

main.yml

- hosts: all
  user: myuser
  gather_facts: no
  tasks:
  - name: ping all hosts
    ping:

当我跑步时ansible-playbook play.yml,我得到了错误

The offending line appears to be:


- hosts: all
  ^ here

它看起来像一个简单的YAML解析错误,但是如果我运行ansible-playbook main.yml,它就可以正常工作,因此不确定发生了什么。有什么想法吗?

史蒂夫·E。

您不能在中指定主机roles/test/tasks/main.yml主机在play.yml文件中指定

roles/test/tasks/main.yml用于定义您希望Ansible执行的动作。对于ping主机,它可能看起来像:

 ---

 - ping:

这将ping在您指定的主机上执行操作play.yml

Ansible具有固定的文件夹结构,可用于分解剧本。play.yml文件指定要定位的主机以及要应用的其他顶级控件角色。

play.yml文件中指定的各个角色位于中roles/X/,Ansible期望有某种文件夹结构。它会在test此处查找要在该角色中运行的任务roles/test/tasks/main.yml

play.yml只是一本剧本。您可以在同一个文件夹中创建多个文件夹,然后使用进行调用ansible-playbook

官方文档提供了建议的剧本目录结构的更详细示例

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Ansible Galaxy角色路径错误

来自分类Dev

使用 docker 角色时出现错误 ansible

来自分类Dev

简单的Ansible Playbook语法错误(YAML)

来自分类Dev

YAML 语法错误(Ansible 2.2.1.0)

来自分类Dev

YAML 语法错误(Ansible playbook)

来自分类Dev

执行角色时,正确的YAML文件足以用于正确的ansible剧本和语法吗?

来自分类Dev

Ansible-错误!我们无法读取JSON或YAML

来自分类Dev

简单剧本中的 Ansible YAML 语法错误

来自分类常见问题

Ansible剧本与角色

来自分类Dev

Ansible永远扮演角色

来自分类Dev

Ansible包含文件角色

来自分类Dev

Ansible:角色的任务结构

来自分类Dev

找不到Ansible角色

来自分类Dev

Ansible - 多个角色

来自分类Dev

使用相关角色配置Ansible角色

来自分类Dev

将参数传递给 Ansible 角色时,变量未定义错误

来自分类Dev

Ansible:剧本和角色的不同

来自分类Dev

角色的Ansible vars_prompt

来自分类Dev

角色之间的Ansible共享文件

来自分类Dev

在ansible中创建动态角色

来自分类Dev

角色内的Ansible复制模块

来自分类Dev

在Ansible输出中显示角色?

来自分类Dev

在Ansible中串行执行角色

来自分类Dev

基于条件的Ansible运行角色

来自分类Dev

ansible角色无法找到模块

来自分类Dev

Ansible Yaml语法失败

来自分类Dev

Ansible Yaml语法失败

来自分类Dev

找不到角色错误

来自分类Dev

包含字典的内联数组上的Ansible YAML语法错误