You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用awx.awx.credential_type创建自定义凭证类型时遇未定义变量错误

使用awx.awx.credential_type创建自定义凭证类型时的"未定义变量"错误解决

你遇到的问题是Ansible误将AWX凭证注入模板里的变量当成自身变量解析,导致抛出"未定义变量"错误。

问题原因

playbook中injectors字段里的{{ username }}、{{ vault_addr }}是给AWX使用的模板变量,但Ansible会自动解析playbook中的双大括号语法,把它们当作Ansible自身的变量处理——而这些变量并没有在playbook中定义,因此触发报错。

解决方法

需要让Ansible不对这些模板变量进行解析,有两种常用实现方式:

方式1:用单引号包裹injectors内容

将injectors的整个值用单引号包裹,Ansible会把内部内容当作纯字符串直接传递,不解析双大括号:

injectors: '{
    "env": {
      "VAULT_USERNAME": "{{ username }}",
      "VAULT_PASSWORD": "{{ password }}",
      "VAULT_ADDR": "{{ vault_addr }}"
    }
  }'

方式2:转义双大括号

通过Ansible的变量嵌套写法,把需要保留的双大括号包裹在Ansible的变量引用中,避免被提前解析:

injectors: {
    "env": {
      "VAULT_USERNAME": "{{ '{{ username }}' }}",
      "VAULT_PASSWORD": "{{ '{{ password }}' }}",
      "VAULT_ADDR": "{{ '{{ vault_addr }}' }}"
    }
  }

修改后的完整Playbook示例

---
- name: Configure AWX
  hosts: localhost
  connection: local
  become: false
  gather_facts: false
  tasks:
  - name: Create Custom Vault credential type
    awx.awx.credential_type:
      name: "Custom Vault"
      description: ""
      kind: cloud
      inputs: {
          "fields": [
            {
              "id": "username",
              "type": "string",
              "label": "Username",
              "secret": false
            },
            {
              "id": "password",
              "type": "string",
              "label": "Password",
              "secret": true
            },
            {
              "id": "vault_addr",
              "type": "string",
              "label": "Custom Vault Address"
            }
          ]
        }
      injectors: '{
        "env": {
          "VAULT_USERNAME": "{{ username }}",
          "VAULT_PASSWORD": "{{ password }}",
          "VAULT_ADDR": "{{ vault_addr }}"
        }
      }'
      state: present
      validate_certs: false

验证说明

修改后重新运行playbook,Ansible会将注入模板原封不动传递给AWX,AWX创建凭证类型后,即可正确使用这些变量完成环境变量注入。

内容的提问来源于stack exchange,提问作者Sagar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 01:58:14