下記要件の時にちょっと調べたのでメモ
- 複数のサーバに対する処理をするシェルスクリプトを配布
- 対象のサーバは増えてもいいようにansibleのinventoryを使って管理したい
NODES=("10.0.1.1" "10.0.1.2" "10.0.1.3")
i=`expr $RANDOM % ${#NODES[@]}`
こんなコードを書いてましたが実行したらエラーが.....
error: Missing end of comment tag'
ansibleで使っているテンプレートエンジンはjinja2というものです
エラー内容からも分かる通り {#
がjinja2側でコメントアウトとして認識されてしまったみたいです
なのでドキュメント見に行きました
しっかり載ってますね!
下記方法で解決
{{ 'i=`expr $RANDOM % ${#NODES[@]}`' }}