LoginSignup
4
4

More than 5 years have passed since last update.

PlayFramework:ビルドを実行する前にシェルコマンドを実行したい

Posted at

開発環境のassetsとプロダクション環境のassetsでは含めるファイルが変わってくることがあります。sourcemapはプロダクションには不要ですし、プロダクションのassetsでは、JSやCSSはminifyすることがあります。

sbt-webでこれらが完結していればその仕組を使って管理できますが、ビルドのassetsに含めるファイルを、Webpack・gulp・MakefileなどCLIツールを使って生成している場合、activator distの前に何らかのシェルコマンドを実行する必要があります。

これを実現するためのbuild.sbtは次のようになります。

build.sbt
lazy val buildAssetsWithCLI = taskKey[Unit]("Build assets files using CLI tools")

buildAssetsWithCLI := {
  "make build" !
}

(packageBin in Universal) <<= (packageBin in Universal) dependsOn buildAssetsWithCLI

"make build"の部分が実行したいシェルスクリプトになります。

4
4
0

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
4
4