Mina: 含まれているgemでのみ変更が発生する場合のアセットの事前コンパイル

作成日 2016年02月04日  ·  4コメント  ·  ソース: mina-deploy/mina

minaはアセットの変更を検出しないため、変更が含まれているgem(Railsエンジン)でのみ発生した場合は、事前コンパイルをスキップするようです。

これまでのところ、チェックインデプロイブロックを使用して事前コンパイルを選択的に強制することにより、この見落としを解決しています。

deploy do
  if hash.extras.include?("compile")
    invoke :'rails:assets_precompile:force'
  else
    invoke :'rails:assets_precompile'
  end
end

そして走っている

mina deploy[compile]

ミナをジェムのアセットの変更にさらすために行うべき構成はありますか、それともこれはまだ開発されていない機能ですか?

最も参考になるコメント

正しい環境変数は次のとおりです。 force_asset_precompile=true

全てのコメント4件

私があなたの言うことを正しく理解しているなら、あなたはいくつかの設定をデプロイセクションに渡す必要があります。

しかし、あなたはいつも通常の方法でそれを行うことができます:

set :force_precompile, -> { true }

上記のように、後でこの設定を使用します。

deploy do
  if force_precompile
    invoke :'rails:assets_precompile:force'
  else
    invoke :'rails:assets_precompile'
  end
end

それは理にかなっていますか?

コード的に-いいえ。 hash.extrasは「コンパイル」が含まれているため、setディレクティブは必要ありません。
機能的にはそうです。 通常、アセットの変更が検出されたときに「スマート」プリコンパイルを実行する標準のmina deployを実行します。 残念ながら、この検出はgemのアセットでは機能しないようです。

環境変数を使用して、アセットのpecompilationを強制できます

mina deploy force_assets=true

正しい環境変数は次のとおりです。 force_asset_precompile=true

このページは役に立ちましたか?
0 / 5 - 0 評価