实例学习ansible系列 16 playbook中自定义环境变量的使用

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

                      
 

在前面的文章中我们使用过环境变量, 但是用户自定义或者随时export出来的环境变量却无法直接引用,而这种方式却是实际工作中用到的最多的情况,使用ansible提供的lookup便可解决这个问题.

定义一个环境变量并export:# export MESSAGE="hello world information"
  
  • 1
 

准备一个简单的playbook用于使用此环境变量

[root@host31 ~]# cat hello.playbook- hosts: host31  gather_facts: false  tasks:    - name:  say hello task      shell: echo ${HOSTNAME} {{ lookup('env','MESSAGE') }}  `date` by `hostname` >/tmp/hello.log[root@host31 ~]#
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
 

执行

[root@host31 ~]# ansible-playbook hello.playbookPLAY [host31] ******************************************************************TASK [say hello task] **********************************************************changed: [host31]PLAY RECAP *********************************************************************host31                     : ok=1    changed=1    unreachable=0    failed=0[root@host31 ~]#
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
 

结果确认:可以看到环境变量MESSAGE的内容已被替换

[root@host31 ~]# cat /tmp/hello.loghost31 hello world information Sun Aug 28 19:52:06 EDT 2016 by host31[root@host31 ~]#
  
  • 1
  • 2
  • 3
           

给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow

这里写图片描述

版权声明:本文为sdfsdfytre原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。