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

如何在Ansible角色的vars/main.yml中复用变量生成新变量?

在Ansible角色vars中复用变量的方法

你可以直接在vars/main.yml里使用变量插值来复用netbox_version的值,无需依赖tasks环节,具体配置如下:

netbox_version: 3.7.3
netbox_source: "https://github.com/netbox-community/netbox/archive/refs/tags/v{{ netbox_version }}.tar.gz"

关键说明:

  • 必须用双引号包裹netbox_source的字符串值:因为URL包含冒号:,如果不用双引号,YAML解析器可能会把https:识别为字典键的一部分,导致语法错误。
  • 变量插值语法{{ netbox_version }}会在Ansible加载变量时自动替换为对应的值,完全在变量加载阶段完成,不需要等到tasks执行。

如果需要更复杂的字符串拼接,也可以使用Ansible的字符串拼接运算符~,写法如下:

netbox_source: "{{ 'https://github.com/netbox-community/netbox/archive/refs/tags/v' ~ netbox_version ~ '.tar.gz' }}"

这种方式效果和直接插值一致,适合需要拆分字符串片段的场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 21:35:54