【问题标题】:Ansible: How to obtain the current inventory locationAnsible:如何获取当前库存位置
【发布时间】:2019-03-13 14:45:14
【问题描述】:

我有许多 Ansible 环境:

environments
  dev
    hosts
    group_vars/
  prod
    hosts
    group_vars/

我需要创建一个“设置”剧本,它将复制我使用的环境的group_vars 中的一些文件。

例如ansible-playbook -i environments/dev setup.yml --extra-vars="target=server1"

应该将文件从 server1 复制到 environments/dev

目前我有任务:

 tasks:
 - name: Copy SSL certificate
   fetch:
      src: /path/to/file.crt
      dest: <inventoty_path>
      flat: yes

但我不知道&lt;inventory_path&gt; 应该使用什么。

是否存在设置当前库存绝对路径的变量?或者获取它的方法(无需为此设置额外的变量)?

【问题讨论】:

    标签: ansible


    【解决方案1】:

    有几个“特殊变量”:

    • ansible_inventory_sources
    • inventory_dir
    • inventory_file

    https://docs.ansible.com/ansible/latest/reference_appendices/special_variables.html

    还有一个配置选项inventoryhttps://docs.ansible.com/ansible/2.4/intro_configuration.html#inventory

    您还可以设置环境变量: https://docs.ansible.com/ansible/2.4/config.html#envvar-ANSIBLE_INVENTORY

    【讨论】:

      【解决方案2】:

      【讨论】:

        猜你喜欢
        • 2016-03-06
        • 1970-01-01
        • 2017-04-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-02-05
        相关资源
        最近更新 更多