_drush en mymodule -y
_を実行すると、モジュールで問題が発生しません。 UIで同じことをすると、うまくインストールされるようです。エラーはありません。ただし、hook_install()
で定義されたロールは作成されません。 Drushではそうです。 UIでのDrushとEnablingモジュールの違いは何ですか?
UIとDrushの間の1つの落とし穴は、ユーザーです。ダッシュコマンドは、デフォルトで匿名として実行されます。 UIの場合と同様に、あなたはより大きな権限を持つユーザー(通常は管理者ユーザー)です。
Drupalの一部は、処理を行う前に権限をチェックします。node_saveはそのような場所の1つです。ロールの作成方法によっては、別の場所がある場合があります。
これを回避するには、Drushで-u
フラグを使用します。
drush -u 1 en my_module
これで問題が解決するかどうかは定かではありませんが、役立つ可能性は十分にあります。