2016-07-19 14 views
1

私は、変数を設定し、この変数が1であるかどうかを確認するために、このコードを使用しています:別の変数を1行で定義する場合、変数を設定する方法は?

{% if pillar['setup_user'] is defined %} 
{% set var_setup_user = pillar['setup_user'] %} 
{% else %} 
{% set var_setup_user = 1 %} 
{% endif %} 

{% if var_setup_user == 1 %} 
setup-user: 
    cmd.run: 
    - name: | 
     ... 

    - shell: /bin/bash 
    - user: root 
{% endif %} 

は、1つのまたは多分2行にこれをチェックする方法はありますか?

ありがとうございました

答えて

2
{% set var_setup_user = pillar['setup_user']|d(1) %} 

ddefaultフィルタの別名です。

+0

が機能しない、エラーが発生する。レンダリングSLS 'base:base' failed:Jinja構文エラー:不明なタグ 'var_setup_user'が検出されました。 line 20 – CroiOS

+0

@CroiOS Edited。ありがとう! –

+0

が動作しています。ありがとうございました – CroiOS

1

通常の3値演算子は機能しますか?

{% set var_setup_user = pillar['setup_user'] if pillar['setup_user'] is defined else 1 %} 
+1

'{%set var_setup_user = ...%}'。 –

関連する問題