Ansible动态库存-如何向库存源注入值

Ansible动态库存-如何向库存源注入值,ansible,yaml,ansible-inventory,ansible-awx,Ansible,Yaml,Ansible Inventory,Ansible Awx,以下是一些背景知识 我有一个动态清单,它从外部来源提取数据。我有各种各样的playbook,它们使用这个清单执行一些任务,我可以通过一个adhocansible playbook命令和via来运行它们 在测试与托管主机的连接时,我可以运行命令,例如ansible-mping-I inventory/linuxnode.servers.fqdn,这完全可以正常工作。我在AWX中也有一个库存同步,这也很好用 这使用YAML格式的inventory/中的inventory源代码,其中我将一些值传递给自

以下是一些背景知识

我有一个动态清单,它从外部来源提取数据。我有各种各样的playbook,它们使用这个清单执行一些任务,我可以通过一个adhoc
ansible playbook
命令和via来运行它们

在测试与托管主机的连接时,我可以运行命令,例如
ansible-mping-I inventory/linuxnode.servers.fqdn
,这完全可以正常工作。我在AWX中也有一个库存同步,这也很好用

这使用YAML格式的
inventory/
中的
inventory源代码
,其中我将一些值传递给自定义库存脚本
和自定义插件
。YAML文件示例
datacenter1.yml

plugin: the_custom_plugin
url: "https://externalapp.servers.fqdn"
username: poweruser
privatekey: secretpassword
现在,出于明显的安全原因,我想去掉用户名和密码,而是隐藏它们:

  • 通过
    ansible playbook
    命令运行时,在环境变量中;及
  • 通过
    AWX
    运行时,在AWX凭据中
  • 问题在于,似乎没有办法向库存资源中的变量注入值。即使是这样一个非常简单的更改也不起作用(即自定义插件失败):

    对于使用外部插件的清单源文件,是否有任何
    秘密YAML语法
    ?或者是自定义插件代码中的问题?我很困惑,这甚至不起作用:

    temp_username: poweruser
    username: "{{ temp_username }}"
    
    干杯

    temp_username: poweruser
    username: "{{ temp_username }}"