saltstack使用マニュアル:Jinja 2テンプレート

1625 ワード

saltstack使用マニュアル:Jinja 2テンプレート
一、Jinja 2の紹介
Jinja2     :             ,     cpu  、              ,   Jinja2  Grains pillar   ,Jinja2          ......

    Jinja2      ......           !

Jinja2      python    ,         Django     ,                。                            ,                  。

Jinja2    :http://docs.jinkan.org/docs/jinja2/templates.html

二、Jinja 2変数
Jinja2          :   {{}}  ,    {%%}  。

            ,          !

[root@salt-master base]# vi var.sls 
{% set var= 'zhangjunchao' %}   #  
test_var:
  cmd.run:
    - name: echo "my name is {{ var }}"  

          :
[root@salt-master base]# salt '*' state.sls var
izwz9f8xrvty50quc2gq50z:
----------
          ID: test_var
    Function: cmd.run
        Name: echo "my name is zhangjunchao"
      Result: True
     Comment: Command "echo "my name is zhangjunchao"" run
     Started: 14:59:33.220965
    Duration: 5.721 ms
     Changes:   
              ----------
              pid:
                  2681
              retcode:
                  0
              stderr:
              stdout:
                  my name is zhangjunchao

Summary
------------
Succeeded: 1 (changed=1)
Failed:    0
------------
Total states run:     1

       ,      Jinja2            ?

ok,        Jinja2!

   Jinja2       :
1.      
{% set var='I ma boy' %}
{{var}}

2.     
{% set list=['zhang','jun','chao'] %}
{{list[1]}}

3.     
{% set dict={'name':'zhang','age':28} %}
{{dict['name']}}

三、プロセス制御文