使用Loop_var Ansible循环多个var

使用Loop_var Ansible循环多个var,ansible,uri,Ansible,Uri,我需要在URI模块中有一个循环,它可以一次性同时运行一个任务。我尝试过下面的示例,但它不起作用,因为只考虑最后一个值: - uri: method: PATCH url: https://10.10.10.10/api/xyz status_code: 200, 201 force_basic_auth: yes user: user password: pass return_content: yes

我需要在URI模块中有一个循环,它可以一次性同时运行一个任务。我尝试过下面的示例,但它不起作用,因为只考虑最后一个值:

- uri:
      method: PATCH
      url: https://10.10.10.10/api/xyz
      status_code: 200, 201
      force_basic_auth: yes
      user: user
      password: pass
      return_content: yes
      validate_certs: no
      body_format: "json"
      body:
       replace:
         data:
              - enabled: "{{ x.enabled }}"
                if_name: "{{ x.name }}"
              - enabled: "{{ y.enabled }}"
                if_name: "{{ y.name }}"
  loop: "{{ vm.params | default([]) | flatten(levels=1) }}"
  loop_control:
       loop_var: x
       loop_var: y
是否有任何方法可以通过loop、loop\u control和loop\u var实现这一点,或者将其与其他模块结合使用,而这些模块在将来不会被弃用

site.yml - --- - hosts: tasks: - include_tasks: main.yml with_items: - "{{ vm.params | default([]) | flatten(levels=1) }}" loop_control: loop_var: x main.yml - --- - uri: method: PATCH url: https://10.10.10.10/api/xyz status_code: 200, 201 force_basic_auth: yes user: user password: pass return_content: yes validate_certs: no body_format: "json" body: replace: data: - enabled: "{{ x.enabled }}" if_name: "{{ x.name }}" I'm not using the 'y' variable in here as that is not possible based on the code you put on. site.yml- --- -主持人: 任务: -包含任务:main.yml 有以下项目: -“{vm.params | default([])| flatte(levels=1)}” 回路控制: 循环变量:x main.yml- --- -uri: 方法:贴片法 网址:https://10.10.10.10/api/xyz 状态代码:200201 强制基本授权:是 用户:用户 密码:pass 返回内容:是 验证证书:否 正文格式:“json” 正文: 替换: 数据: -已启用:“{x.enabled}” if_name:“{x.name}” 我在这里没有使用“y”变量,因为根据您所使用的代码,这是不可能的。