ansible-剧本错误!字段';主机';是必需的,但未设置

ansible-剧本错误!字段';主机';是必需的,但未设置,ansible,Ansible,ansible新手:尝试一个剧本,其中有一个任务和一个预任务。任务正在复制成功执行的文件。pretask正在检查是否有自制软件,如果没有,则检查是否已安装。这让我犯了这个错误 错误!“主机”字段是必填字段,但未设置 我已经将剧本顶部的hosts值设置为localhost,因为我只使用本地主机。 我已将整个剧本粘贴在此处: 谢谢你的帮助。谢谢 --- - hosts: localhost tasks: - copy: src: "~/.master.testconfig"

ansible新手:尝试一个剧本,其中有一个任务和一个预任务。任务正在复制成功执行的文件。pretask正在检查是否有自制软件,如果没有,则检查是否已安装。这让我犯了这个错误

错误!“主机”字段是必填字段,但未设置

我已经将剧本顶部的hosts值设置为localhost,因为我只使用本地主机。 我已将整个剧本粘贴在此处:

谢谢你的帮助。谢谢

---
- hosts: localhost
  tasks:
   - copy: 
      src: "~/.master.testconfig" 
      dest: "~/.testconfig"

- pre_tasks:
   - name: Ensure Homebrew is Installed
     stat:
      path: /usr/local/bin/brew
      register: homebrew_check

   - name: Fail If Homebrew Is Not Installed
     fail: 
       msg: Homebrew is missing.. Install from http://brew.sh/
       when:
         - not homebrew_check.stat.exists

   - name: Installing Homebrew
     shell: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
     when:
       - not homebrew_check.stat.exists
       - install_homebrew_if_missing
输出: [警告]:未分析任何资源清册,只有隐式localhost可用 [警告]:提供的主机列表为空,只有本地主机可用。请注意,隐式 localhost与“all”不匹配

播放[本地主机]************************************************************************************

任务[收集事实]****************************************************************************** 确定:[本地主机]

任务[副本]***************************************************************************************** 确定:[本地主机]
错误!“主机”字段是必需的,但未设置该字段。

该错误是由于语法错误造成的:对于
预处理任务
,您不需要
-
。另一个问题是缩进是不正确的

正确的语法是:

---
- hosts: localhost
  tasks:
    - copy: 
        src: "~/.master.testconfig" 
        dest: "~/.testconfig"
  pre_tasks:
    - name: Ensure Homebrew is Installed
      stat:
        path: /usr/local/bin/brew
        register: homebrew_check

    - name: Fail If Homebrew Is Not Installed
      fail: 
        msg: Homebrew is missing.. Install from http://brew.sh/
      when: not homebrew_check.stat.exists

    - name: Installing Homebrew
      shell: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
      when:
        - not homebrew_check.stat.exists
        - install_homebrew_if_missing

谢谢。我只需要更正寄存器缩进以与stat对齐:只是一个小问题,这部分没有执行名称:安装Homebrew它失败并随着执行而停止实际上我想在预任务中安装Homebrew,如果失败后不存在message@user1403505条件是正确的。系统中是否存在Ruby?你面临什么样的错误?