我有几个 AWX 作业模板/剧本,全部基于这个 ansible 脚本:
https://github.com/spantaleev/matrix-docker-ansible-deploy
我用来部署服务器的初始脚本具有当前在 Inventories > ‘Custom_Inventory’ > HOSTS > ‘My_Domain’ 中定义的变量:
然后我设置进一步的作业模板来配置该服务的各个部分。
它将输入保存在该脚本的“额外变量”中,但我真正需要的是一种保存和汇总这些调查答案的方法。
当我升级服务时(通过再次运行原始剧本),它仅应用预先保存的主机变量,而不是这些调查中输入的任何数据。
我如何保存这些调查变量以便它们可以应用于原始部署/更新脚本?
任何指导/建议都将非常有用,我不知道从哪里开始。:S
答案1
您可以使用 set_facts 和 set_stats 将它们传播到所需的数据集(dict|list)
确保调查键和值在执行过程中保留下来(如果您丢失值,则可以选择步骤)
- set_fact:
survey_question: survey_ans.value
然后主要步骤是将它们(字典)公开为后续操作的元数据。
- set_stats:
data:
survey_question: survey_ans.value
这将在角色/剧本/任务的生命周期中存活下来,然后可以在工作流中使用公开的输出来聚合值作为后续管道的输入。