LoginSignup
8
5

More than 5 years have passed since last update.

php-fpmをAnsibleで入れようとしたらしょーもないことに遭遇した話

Last updated at Posted at 2016-01-29

はじめに

ちょっとAnsibleでNginx+PHP+MySQLな環境を作ろうとしていたら本当にしょうもないことに出くわしました。php-fpmの設定ファイルを反映するところで何度やっても事故るという。

最終的にただの笑い話でよかったですが。(仕事しろ)

事象

Playbook実行時のエラーがこれ
playbookerror.png

AnsibleError: file: /Users/.../playbook/roles/php70/templates/php-fpm.d/www.conf.j2, line number: 288, error: Encountered unknown tag 'Y'.

なるほど設定ファイルのテンプレにへんなタグがあるよと。タイポかな?とりあえず該当箇所見てみよう。

www.conf.j2.png

まずコメント行だから初期のままなんだけどなぁ...。
あ、とりあえずタイポではないけど、ブラケットがいる...。
でも確かplaybookの変数は二重波括弧({{ hoge }})だったはず...?
Jinjaというテンプレートエンジンを使ってたはずなので見てみよう。

jinjahome.png

ん...?

img1454044305491.png
img1454044423243.png

▂▅▇█▓▒░(’ω’)░▒▓█▇▅▂うわああああああああああ
Jinjaの文法ちゃんと知っていなかったがために数分無駄にしましたとさ...。
知っててもしょうがなかったけども

顛末

コメントなので消してしまっても良いかと思ったのですが、usage系のコメントは消したくなかったのでJinjaのページを漁って対応方法を探しました。
シンタックスの文字をそのままレンダリングするためのタグがあるので、それを使用するとバッチリ通りました。

(๑•̀ㅂ•́)و✧ヤッタネ

;      e.g. for a ISO8601 formatted timestring, use: %{%Y-%m-%dT%H:%M:%S%z}t
↓↓
{% raw %}
;      e.g. for a ISO8601 formatted timestring, use: %{%Y-%m-%dT%H:%M:%S%z}t
{% endraw %}

おしまい

今回に限らず起きそうなので笑いのネタ程度に残しました。
ここまでお読みいただきありがとうございました!

追記:IWAI Masaharu 様、ひどい誤字にご指摘いただきありがとうございました!

8
5
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
5