2017-01-25 1 views
1
setzen

Ich muss eine Zeichenfolge in einer Vorlage erstellen, die zwischen Hosts wechseln kann, und es muss in Form von sein: "Kerne": "0,1 , 2,3 "Wie verkettete String-Variable in Ansible Vorlage auf einer Bedingung

Und der Grund, dass die Zeichenfolge" 0,1,2,3 "in diesem Beispiel ist, ist, weil der Host 4 Prozessorkerne hat.

So blieb ich mit etwas stecken, das mir zu verworren scheint und ich bin mir nicht einmal sicher, wie ich diese Variable core_count in meiner Vorlagendatei verwenden soll.

{% 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 %} 

Antwort

2

Es gibt viele nützliche lookup Plugins in ansible. Nehmen Sie sequence:

- hosts: localhost 
    gather_facts: yes 
    tasks: 
    - debug: 
     msg: '"cores": "{{ lookup("sequence","start=0 count="+(ansible_processor_cores|string)) }}"' 
+0

Vielen Dank, das funktioniert! – Vadimski

Verwandte Themen