ansible 之条件语句 when
注册变量:
变量的另一个用途是将一条命令的运行结果保存到变量中,供后面的playbook使用。例如:
- hosts: webservers
tasks:
- shell: /usr/bin/foo
register: foo_result
ignore_errors: True 使用ignore_errors来忽略错误信息
- shell: /usr/bin/bar
when: foo_result.rc == 5
条件语句:
在某些情况下,一个变量的值可以依赖于其他变量的值,当然也会影响Ansible的执行过程。
下面主要介绍When声明.
tasks:
- name: "shutdown Debian flavored systems"
command: /sbin/shutdown -t now
when: ansible_os_family == "Debian"
下面再看一个示例,通过判断一条命令执行结果做不同分支的二级处理。
tasks:
- command: /bin/false 没有 - name 时,此行将被默认成为标题--- TASK: [command: /bin/false]
register: myresult
ignore_errors: True
- command: /bin/something
when: myresult|failed
- command: /bin/something_else
when: myresult|success
- command: /bin/still/something_else
when: myresult|skipped
其中success为Ansible内部过滤器方法,返回True代表命令运行成功。
---------------------------------------------------------------------------
[root@localhost when]# cat main.yml
- hosts: webservers
tasks:
- name: haha
command: /bin/uname
register: result
ignore_errors: True
- command: /bin/df
when: result|failed
register: aaa
- command: /bin/ls
when: result|success
- command: /bin/lsblk
when: aaa|skipped
执行后的结果如下:
转载于:https://www.cnblogs.com/wangjq19920210/p/9111219.html
ansible 之条件语句 when相关推荐
- ansible的条件判断、迭代执行、tags
在ansible中支持条件判断,这使我们操作更加灵活 使用when进行条件测试 示例1: 将 testservers 组中的其中一台主机上的 httpd 服务卸载掉,另外主机不卸载 1 2 3 4 5 ...
- Ansible9:条件语句【转】
在有的时候play的结果依赖于变量.fact或者是前一个任务的执行结果,从而需要使用到条件语句. 一.when 有的时候在特定的主机需要跳过特定的步骤,例如在安装包的时候,需要指定主机的操作系 ...
- Linux运维-day44-综合架构-playbook剧本的变量、条件语句及循环语句
环境准备: m01管理服务器(外网:10.0.0.61:内网:172.16.1.61) backup(外网:10.0.0.41:内网:172.16.1.41) nfs01(外网:10.0.0.31:内 ...
- Go 学习笔记(8)— 条件语句(if、if...else...、switch、fallthrough)
Go 语言提供了以下几种条件判断语句: 语句 描述 if 语句 if 语句 由一个布尔表达式后紧跟一个或多个语句组成 if-else 语句 if 语句 后可以使用可选的 else 语句, else 语 ...
- 用python循环语句求素数_Python基础入门_3条件语句和迭代循环
Python 基础入门前两篇: Python 基础入门--简介和环境配置 Python基础入门_2基础语法和变量类型 这是第三篇内容,主要简单介绍条件语句和迭代循环语句,内容也比较简单,目录如下: 条 ...
- python 条件选择语句_Python趣味入门4:选择往往是最重要的-条件语句
人生处处有选择,程序也有选择,为了让程序变得更加强壮,程序员必须考虑任何情况,上一篇了解到了如何使用Python来行顺序语句的编写,我们写了一个可以输入姓名的生日祝贺程序,今天我们挑战条件语句! 1. ...
- day1简述、输入输出、运算符、条件语句、文件读写、三元运算
文章目录 1.Python 简述 2.变量 3.输入输出 4.数据运算 5. 条件语句 if..else.elif 循环语句 for.while 6.文件读写 7.三元运算 1.Python 简述 ...
- R语言If、Else条件语句实战
R语言If.Else条件语句实战 目录 R语言If.Else条件语句实战 # if()函数和else() 函数 # ifelse函数
- 包教包会!7段代码带你玩转Python条件语句(附代码)
来源:大数据 本文约5200字,建议阅读10分钟. 本文介绍了Python条件语句常用的7段代码. [ 导 读 ]条件语句通过一个或多个布尔表达式的执行结果(真值或假值)决定下一步的执行方向.所谓布尔 ...
最新文章
- redis 漏洞利用与防御
- C#获取控制台句柄的方法
- MySql之DDL操作创建表(添加主键, 外键约束以及基本的数据类型)
- C++笔记——指向常量的指针/指针常量
- NET框架下如何使用PaddleOCRSharp
- python怎么填充画布_如何在kivy中用图像填充画布?
- PHP方向+go+rpc+swoole,瞅瞅 PHP+Swoole 作为网络通信框架
- 跨平台屏幕/摄像头RTMP推流模块设计要点
- linux查询cpu核心数
- python之路day5_学习python之路--Day5 计算器
- matlab控制图像的边界(margin),subplot的间距(gap)
- 百度文库免积分免费下载工具的原理与实现
- JS事件 内容选中事件(onselect)选中事件,当文本框或者文本域中的文字被选中时,触发onselect事件,同时调用的程序就会被执行。...
- MeanShift、K-Means与GMM迭代
- 详细介绍 Yolov5 转 ONNX模型 + 使用ONNX Runtime 的 Python 部署(包含官方文档的介绍)
- 【Sutcliffe Pentagons】奇幻派的漂流
- c++内存管理:new与delete,深拷贝与浅拷贝
- Python lambda表达式及用法
- JDBC链接中的问题
- PROFINET实时以太网协议
热门文章
- 网址大全:国外超级便宜空间
- 再看序列化与反序列化[转]
- 【Spring 基础注解】对象创建相关注解、注入相关注解、注解扫描详解
- 跟我一起学jQuery——第二集(未完待续..)
- arpspoof看看隔壁女同事上班时间都在浏览什么网页?
- [转]非极大值抑制(Non-Maximum Suppression)
- Meinheld 和 Gevent_XYM
- 城市天气数据获取接口
- 互联网人必看的中台理论,阿里腾讯架构师用大白话讲出来了
- Nodejs版本的企业微信中接收消息与腾讯对接之验证URL 代码已经上传,可以去下载