我需要在模板中创建一个可以在主机之间切换的字符串,它需要采用以下形式: “核心”:“0,1,2,3”
此示例中字符串为“0,1,2,3”的原因是主机有4个处理器核心。
所以我遇到了一些对我来说太复杂的事情,我甚至不确定如何在我的模板文件中使用这个core_count变量。
{% set core_count = '' %}
{% for i in range(ansible_processor_cores) %}
{% set core_count = core_count ~ i %}
{% if not loop.last %}
{% set core_count = core_count ~ ',' %}
{% endif %}
{% endfor %}
答案 0 :(得分:3)
Ansible中有许多方便的lookup插件。拿sequence
:
- hosts: localhost
gather_facts: yes
tasks:
- debug:
msg: '"cores": "{{ lookup("sequence","start=0 count="+(ansible_processor_cores|string)) }}"'