出现问题的代码示例:
- name: Example loop
hosts: localhost
vars:
nums:
- 1
- 2
- 3
tasks:
- name: Loop through numbers
debug:
msg: "{{ item }}"
loop: "{{ nums }}"
解决方法如下:
检查Ansible版本是否支持循环功能。确保您正在使用的Ansible版本是支持循环功能的。如果您的版本较旧,请考虑升级至最新版本。
确保您的任务正确缩进。在Ansible中,正确的缩进非常重要。请确保任务的缩进正确,以便循环和debug任务属于同一级别。
使用with_items代替loop。较新版本的Ansible中,循环已被with_items取代。尝试使用with_items代替loop来循环遍历nums变量。
- name: Example loop
hosts: localhost
vars:
nums:
- 1
- 2
- 3
tasks:
- name: Loop through numbers
debug:
msg: "{{ item }}"
with_items: "{{ nums }}"
- name: Example loop
hosts: localhost
vars:
nums:
- 1
- 2
- 3
tasks:
- name: Print nums variable
debug:
var: nums
- name: Loop through numbers
debug:
msg: "{{ item }}"
with_items: "{{ nums }}"
通过检查Ansible版本、缩进、使用with_items代替loop以及确保变量正确定义,您应该能够解决循环和debug命令不起作用的问题。