将Ansible模板呈现到事实变量中

将Ansible模板呈现到事实变量中,ansible,jinja2,ansible-template,Ansible,Jinja2,Ansible Template,有没有办法把Ansible模板变成事实?我试图找到一个解决方案,但似乎临时文件是唯一的方法。我想您可能只是在寻找: 用法示例: template.j2 Hello {{ value_for_template }} playbook.yml --- - hosts: localhost gather_facts: no connection: local vars: value_for_template: world tasks:

有没有办法把Ansible模板变成事实?我试图找到一个解决方案,但似乎临时文件是唯一的方法。

我想您可能只是在寻找:


用法示例:

  • template.j2

      Hello {{ value_for_template }}
    
  • playbook.yml

      ---
      - hosts: localhost
        gather_facts: no
        connection: local
        vars:
          value_for_template: world
        tasks:
          - debug:
              var: rendered_template
            vars:
              rendered_template: "{{ lookup('template', './template.j2') }}"
    
  • 结果是:

      TASK [debug] *******************************************************************
      ok: [localhost] => {
          "rendered_template": "Hello world\n"
      }
    
  TASK [debug] *******************************************************************
  ok: [localhost] => {
      "rendered_template": "Hello world\n"
  }