gpt4 book ai didi

ansible - 如何将 Ansible 剧本变量从主剧本传递到链接剧本?

转载 作者:行者123 更新时间:2023-12-02 00:35:37 26 4
gpt4 key购买 nike

我正在尝试了解如何将“主”剧本中定义的 Ansible 剧本变量传递到我已经在我的主剧本中引用的其他剧本中。

例如,对于下面的“主”剧本,我想将 sethostnamesetipaddress 的值传递给 playbook[1-3].yml 引用在我的任务部分。这类似于调用其他编程语言中的函数。

---
- hosts: all
become: yes

vars_prompt:
- name: "sethostname"
prompt: "What will be the machine's hostname?"
private: no

- name: "setipaddress"
prompt: "What will be the machine's IP address?"
private: no

tasks:
- include: playbook1.yml
- include: playbook2.yml
- include: playbook3.yml

最佳答案

从 Ansible 2.4 开始,您现在可以导入剧本,这意味着它们将在解析剧本时进行预处理,并按照您导入它们的顺序运行。在文档中查看有关导入与包含的完整信息 http://docs.ansible.com/ansible/latest/user_guide/playbooks_reuse_includes.html

您可以将变量传递给它们,就像您可以传递给其他 include_* 任务一样。

  tasks:
- import_playbook: playbook1.yml
vars:
sethostname: "{{ sethostname }}"
setipaddress "{{ setipaddress }}"

关于ansible - 如何将 Ansible 剧本变量从主剧本传递到链接剧本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49781008/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com