我在playbook级别定义环境变量时遇到问题。 According to the docs it should be possible.
$ ansible --version
1.7.1
$ ansible-playbook -i staging deploy.yml
ERROR: environment is not a legal parameter at this level in an Ansible Playbook
这里简化了剧本:
---
- hosts: app
user: web
environment:
PATH: "{{ path_append }}:{{ ansible_env.PATH }}"
tasks:
- ...
- ...
为了确保,我尝试在没有变量的情况下进行设置,结果相同。
在任务中移动环境定义。
答案 0 :(得分:3)
该文档不正确。这是一个在更高版本(ansible 1.8)中修复的错误。你能升级到1.9.x吗?