active_adminのassets precompileが失敗する
active_adminのprecompileが失敗する。
プリコンパイルしてみると..
$ bundle exec rake assets:precompile /Users/hakutoitoi/.rbenv/versions/1.9.3-p194/bin/ruby /Users/hakutoitoi/.rbenv/versions/1.9.3-p194/bin/rake assets:precompile:all RAILS_ENV=production RAILS_GROUPS=assets rake aborted! Undefined mixin 'global-reset'. (in /Users/hakutoitoi/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/activeadmin-0.5.1/app/assets/stylesheets/active_admin/_base.css.scss) Tasks: TOP => assets:precompile:all(See full trace by running task with --trace) rake aborted! Command failed with status (1): [/Users/hakutoitoi/.rbenv/versions/1.9.3-p1...] Tasks: TOP => assets:precompile (See full trace by running task with --trace)
sassのmixinが未定義と言われて失敗する。
github issueでは色々議論されていて色んな解決法が書いてあるが、自分の環境ではconfig.assets.precompileの指定を変えたら成功するようになった。
https://github.com/gregbell/active_admin/issues/810
もともとはprecompileするファイルの指定はproduction.rbで下記のように指定していた。
config.assets.precompile += ['*.js', '*.css']
アスタリスクでの指定をやめて正規表現で指定したら成功した。
config.assets.precompile += [/^[a-z0-9]\w+.(css|js)$/]