zoukankan      html  css  js  c++  java
  • ansible小技巧

    • 出现带'u'的 unicode编码, 在python里 .encode()回去,尤其是经过shell处理的,最好在shell中使用jinja2来处理一下

    最好这种情况在shell模块使用jinja2的循环来代替shell的循环,从而获得一个列表stdout_lines

    • register的变量,后边判断是否定义不能用is defined要用|skipped这样的方式,set_fact定义的变量可以用is defined来判断
    • ansible中的dict类型通过点 . 调用下一级字段最多三级,三级之后用中括号[ ]

    例如: - debug: var=out.json.versions["values"]

    模块的执行,无论是执行或不执行 都会有changed字段输出, 执行成功与失败也都会有changed的字段输出,所以控制changed的状态就是非常重要的事情
    shell模块执行成功就会changed: true ; 失败则是false ; 执行命令失败: 命令错误的情况并不输出failed的字段,因为要用is failed判断, 执行命令正确但是结果返回码不是0的情况下有failed字段,但是执行成功或失败都有rc字段,skipped则没有rc字段 输出。

    register一个变量,不论该task是否被skipped,都会有defined状态,所以register的变量不能以defined来做判断,set_fact的可以用defined来判断。

    run_once时获取到的变量值是可以带入其他hosts的

  • 相关阅读:
    HDU 2098 分拆素数和 数论
    CodeForces The Endless River
    CodeForces Good Words
    CodeForces A or B Equals C
    HDU 1251 统计难题 字典树/STL
    CSUOJ 1555 Inversion Sequence 线段树/STL
    OpenJudge P4979 海贼王之伟大航路 DFS
    敌兵布阵 线段树
    HDU 4004 The Frog's Games 二分
    HDU 2578 Dating with girls(1) 二分
  • 原文地址:https://www.cnblogs.com/wangl-blog/p/9579072.html
Copyright © 2011-2022 走看看