summaryrefslogtreecommitdiff
path: root/contrib
diff options
context:
space:
mode:
authorJean Helou <jhe@codamens.fr>2019-02-15 11:41:36 +0100
committerTobias Roeser <le.petit.fou@web.de>2019-03-11 07:41:03 +0100
commit66f31c8437f26c657bb3a3aa368264278d16f65f (patch)
tree7f793189d0d0e2e100730f937774097d35a1c4ab /contrib
parentd1f1b6bf137ea0e6b8a8d1dd030443ba5d2fb002 (diff)
downloadmill-66f31c8437f26c657bb3a3aa368264278d16f65f.tar.gz
mill-66f31c8437f26c657bb3a3aa368264278d16f65f.tar.bz2
mill-66f31c8437f26c657bb3a3aa368264278d16f65f.zip
Adds individual modules to configure mill to playframework's defaults
This adds : - version configuration - dependencies - directory layout - runtime server
Diffstat (limited to 'contrib')
-rw-r--r--contrib/playlib/api/src/Versions.scala7
-rw-r--r--contrib/playlib/src/mill/playlib/Dependencies.scala15
-rw-r--r--contrib/playlib/src/mill/playlib/Layout.scala17
-rw-r--r--contrib/playlib/src/mill/playlib/Server.scala22
-rw-r--r--contrib/playlib/src/mill/playlib/Version.scala11
5 files changed, 72 insertions, 0 deletions
diff --git a/contrib/playlib/api/src/Versions.scala b/contrib/playlib/api/src/Versions.scala
new file mode 100644
index 00000000..25e7026e
--- /dev/null
+++ b/contrib/playlib/api/src/Versions.scala
@@ -0,0 +1,7 @@
+package mill
+package playlib
+package api
+object Versions {
+ val PLAY_2_6="2.6.0"
+ val PLAY_2_7="2.7.0"
+}
diff --git a/contrib/playlib/src/mill/playlib/Dependencies.scala b/contrib/playlib/src/mill/playlib/Dependencies.scala
new file mode 100644
index 00000000..2583ffbf
--- /dev/null
+++ b/contrib/playlib/src/mill/playlib/Dependencies.scala
@@ -0,0 +1,15 @@
+package mill
+package playlib
+
+import mill.scalalib._
+import mill.scalalib.api._
+
+private [playlib] trait Dependencies extends ScalaModule with Version{
+ override def ivyDeps = T{
+ super.ivyDeps() ++ Agg(
+ ivy"com.typesafe.play::play:${playVersion()}",
+ ivy"com.typesafe.play::play-guice:${playVersion()}",
+ ivy"com.typesafe.play::play-server:${playVersion()}",
+ ivy"com.typesafe.play::play-logback:${playVersion()}"
+ )}
+}
diff --git a/contrib/playlib/src/mill/playlib/Layout.scala b/contrib/playlib/src/mill/playlib/Layout.scala
new file mode 100644
index 00000000..6d58152a
--- /dev/null
+++ b/contrib/playlib/src/mill/playlib/Layout.scala
@@ -0,0 +1,17 @@
+package mill
+package playlib
+
+import mill.scalalib._
+
+private[playlib] trait Layout extends JavaModule{
+
+ def conf = T.sources{ millSourcePath / 'conf }
+ def app = T.sources{ millSourcePath / 'app }
+
+ override def sources = T.sources{ app() }
+ override def resources = T.sources{ conf() }
+}
+
+
+
+
diff --git a/contrib/playlib/src/mill/playlib/Server.scala b/contrib/playlib/src/mill/playlib/Server.scala
new file mode 100644
index 00000000..f41c41d7
--- /dev/null
+++ b/contrib/playlib/src/mill/playlib/Server.scala
@@ -0,0 +1,22 @@
+package mill
+package playlib
+
+import mill.scalalib._
+
+private[playlib] trait Server extends ScalaModule with Version {
+ def playServerProvider = T {
+ ivy"com.typesafe.play::play-akka-http-server:${playVersion()}"
+ }
+
+ override def runIvyDeps = T {
+ super.runIvyDeps() ++ Agg(playServerProvider())
+ }
+
+ override def mainClass = T {
+ Some("play.core.server.ProdServerStart")
+ }
+}
+
+
+
+
diff --git a/contrib/playlib/src/mill/playlib/Version.scala b/contrib/playlib/src/mill/playlib/Version.scala
new file mode 100644
index 00000000..77e57886
--- /dev/null
+++ b/contrib/playlib/src/mill/playlib/Version.scala
@@ -0,0 +1,11 @@
+package mill
+package playlib
+
+private[playlib] trait Version extends Module{
+
+ def playVersion: T[String]
+
+ private[playlib] def playMinorVersion: T[String] = T {
+ playVersion().split("\\.").take(2).mkString("", ".", ".0")
+ }
+}