将变量文件导入ansible中的另一个文件

将变量文件导入ansible中的另一个文件,ansible,ansible-2.x,ansible-inventory,Ansible,Ansible 2.x,Ansible Inventory,我不熟悉ansible。 我有两个变量文件,一个是全局的,另一个是特定于环境的。 以下是global/group_var/all.yaml文件夹中的全局文件: rel: deployment: webui: dockerName: "rel" dockerTag: "Dev_{{ travis.build_number }}" 具体的一个在develope/group_var/all.yaml文件夹中 docker: register

我不熟悉ansible。 我有两个变量文件,一个是全局的,另一个是特定于环境的。 以下是global/group_var/all.yaml文件夹中的全局文件:

  rel:
    deployment:
      webui:
        dockerName: "rel"
        dockerTag: "Dev_{{ travis.build_number }}"
具体的一个在develope/group_var/all.yaml文件夹中

docker:
  registery: "xxxx"
有什么方法可以导入global/group\u var/all.yaml来开发/group\u var/all.yaml吗

import global/group_var/all.yaml
docker:
  registery: "xxxx"
因此,develope/group_var/all.yaml变为:

rel:
  deployment:
    webui:
      dockerName: "rel"
docker:
  registery: "xxxx"
dockerTag: "Dev_1111"

谢谢

可以将全局变量读入字典。比如说

$ cat develop/group_var/all.yaml
global: "{{ lookup('file', 'global/group_var/all.yaml')|from_yaml }}"
docker:
  registery: "xxxx"
剧本

- hosts: localhost
  tasks:
    - include_vars: develop/group_var/all.yaml
    - debug:
        var: global
    - debug:
        var: docker
给予


这些不是库存文件。这些是变量文件。@larsks感谢我修复了它感谢它的答案它适用于静态变量但适用于dockerTag:“Dev_{{travis.build_number}}”不会替换模板吗?那不可能吗?
    "global": {
        "rel": {
            "deployment": {
                "webui": {
                    "dockerName": "rel"
                }
            }
        }
    }

    "docker": {
        "registery": "xxxx"
    }