OpenPNE3と認証プラグイン

OpenPNEは3からは2と違いplugin機能がついた.まぁ何はともあれ作ってみますかと思った所で躓いた.使ってるのは3.0.5なんだけど

$ ./symfony opGenerate:plugin opAuthFooPlugin

のように認証系のスケルトンを作るだけでpc_frontendが500で動かなくなる.画面真っ白になるし,これって仕様じゃないよね…?公式のドキュメントは古めだし,いまいち信頼できるものがないのが厳しい.

追記

3.1.2でも駄目だった.しかし中の人達がopAuth*を追加できるということは,俺の環境がおかしいのか?でもちゃんとccはしてるし,opFooPluginなら問題ないしなぁ.ぐぬぬ

解決

今日デバッグモードで試したら,あっさりと原因が分かった.認証系プラグインは他のとは違いいくつかのファイル(クラス)が必須のようだ.

  • lib/opAuthAdapterFoo.class.php
  • lib/opAuthLoginFormFoo.class.php
  • config/auth.yml

とりあえずこれだけ作ればなんとかなった(Formが必須なのがよく分かんない.configureのためか?).opAuth系を特別扱いするなら

$ ./symfony opGenerate:auth-plugin

みたいなコマンドを用意すればいいと思った.