<class 'ansible.parsing.yaml.objects.AnsibleSequence'> PLAYBOOK 中的错误。MAIN.YML 文件出了什么问题

问题描述 投票:0回答:1
  • Create a file named simplefile.txt - write a task in the main.yml file in present in fresco_when asks folder.- 任务是将创建的 simplefile.txt 文件移动到创建的目录,即将创建文件移动到 /home/user /test 文件夹。- 仅当文件不存在时才移动。在剧本中使用 when

我创建了一个文本文件,然后写了这个main.yml文件:

  • 主机:本地主机 任务:
    • name:复制一个文件,如果文件已经存在则不复制 命令:cp challenge/fresco_when/defaults/simplefile.txt /home/usr/test/creates=simplefile.txt

我收到这个错误:

错误!意外的参数类型在行动:

错误似乎在“/projects/challenge/fresco_when/tasks/main.yml”中:第 1 行,第 3 列,但可能

根据确切的语法问题在文件的其他地方。

违规行似乎是:

  • 主机:本地主机

    ^ 这里

分数:0%

请让我知道代码有什么问题

ansible ansible-2.x
1个回答
2
投票

仅根据您问题中的路径,您似乎已将该剧本结构用于该剧本中的任务文件

为清楚起见,playbooks 需要指定它们将应用到的主机,但是 playbook 中的任务将应用于该游戏中的所有主机(错误,或多或少)

剧本目录中

tasks/*.yml
的内容应该是一个yaml列表,只包含任务(
- command:
- debug:
,那种东西),并且not
- hosts:


另外,虽然这不是您所要求的,但您正在重新实施

- copy:
因为 ansible 可能会在您运行该任务时警告您

ansible-y 这样做的方法是:

- name: copy a file, but do not copy if the file already exists
  copy:
    src: challenge/fresco_when/defaults/simplefile.txt
    dest: /home/usr/test/simplefile.txt
© www.soinside.com 2019 - 2024. All rights reserved.