--- # it is often useful to be able to set the environment for one command and have that environment be totally # different for another. An example is you might use a HTTP proxy for some packages but not for others. # # in Ansible 1.1 and later, you can pass the environment to any module using either a dictionary variable # or a dictionary itself. - hosts: all user: root # here we make a variable named "env" that is a dictionary vars: env: HI: test2 http_proxy: http://proxy.example.com:8080 tasks: # here we just define the dictionary directly and use it # (here $HI is the shell variable as nothing in Ansible will replace it) - shell: echo $HI environment: HI: test1 # here we are using the $env variable above - shell: echo $HI environment: env