错误! 'fail'不是Play的有效属性

时间:2016-09-01 09:00:17

标签: ansible

我是Ansible的新手。下面是我试图播放的剧本的小片段,但面对错误“错误!'失败'不是播放的有效属性”

<?php

ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

function ping($host, $port)
{
    $time_start = round(microtime(true) * 1000);
    $fp = fsockopen("tcp://" . $host, $port, $errno, $errstr, 1);
    if ($fp) {
        $time_end = round(microtime(true) * 1000);
        fclose($fp);
        $time = $time_end - $time_start;
        return $time;
    } else {
        return $errno . ":" . $errstr;
    }
}

echo ping("149.56.81.67", 25565);

我已尝试在stackoverflow上找到多个选项,但没有成功。

1 个答案:

答案 0 :(得分:1)

fail指令必须在任务级别使用

这意味着要获得所需效果,您必须执行类似

的操作
---
   vars_prompt:
      - name: "var1"
        prompt: "Please pass variable"
        private: no

   tasks:
     - fail: msg="var1 is not passed or blank"
       when: var1 is undefined or ( var1 is defined and storeid == "" )

您只需在声明后放置其余任务即可。 “错误!'失败'不是”播放“消息的有效属性,因为您当前正在将其设置为Ansible期望成为游戏的嵌套级别。