ansible - 如何在 Ansible 剧本中冻结变量值
问题描述
鉴于此 Ansible 剧本:
- name: CI/CD management, via cidre.io
hosts: 127.0.0.1
connection: local
vars:
cidre_version: "{{ lookup('file', '../VERSION') | default('v0.1.0') }}"
roles:
- role1
- role2
我明白每次我使用cidre_version
变量,Ansible 读取VERSION
文件,因此值是动态的并且可以跨任务改变。
剧本启动时如何冻结此值?
解决方案
好问题。
您可以执行以下操作:
- 创建一个任务,如果存在则复制该文件,否则创建一个添加默认值的新文件。
- 初始化从此新文件中读取的变量。
这应该可以解决您的问题。
推荐阅读
- javascript - 如何在box2d js中添加图像
- elasticsearch - 我将 elasticsearch 移到新文件夹中,也在 elasticsearch.yml 文件中提供了新路径,但它给出了错误
- python - 在 for 循环中实现“if”语句
- c# - 如何将数量转换为最接近 100 的部分
- javascript - 如何在此 javascript 输出中添加逗号?
- javascript - 如何在javascript中清除本地存储值
- python - 无法在 AWS EMR 上使用 PySpark Dataframe 保存 CSV 文件
- user-interface - 通过回车键进行选择的CComboBox事件?
- javascript - Fullcalendar 从 3.x 迁移到 4.x extraParams 不会将多个输入作为数组操作
- javascript - 使用 JS 在多个元素上更改背景颜色,然后在选择另一个元素时更改