Skip to content

Instantly share code, notes, and snippets.

@fdz5
Last active January 2, 2016 00:49
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save fdz5/8226163 to your computer and use it in GitHub Desktop.
Save fdz5/8226163 to your computer and use it in GitHub Desktop.
slick <<= slickCodeGenTask
lazy val slick = TaskKey[Seq[File]]("gen-tables")
lazy val slickCodeGenTask = (baseDirectory, dependencyClasspath in Compile, runner in Compile, streams) map {
(dir, cp, r, s) =>
println()
val outputDir = (dir / "app" ).getPath // place generated files in app sources folder
val url = "jdbc:postgresql://host:port/database"
val jdbcDriver = "org.postgresql.Driver"
val slickDriver = "scala.slick.driver.PostgresDriver"
val pkg = "models.db"
val cp2 = cp.files ++ Seq(new java.io.File((dir / "target" / "scala-2.10" / "classes").getPath))
toError(r.run("sbt.CustomSourceCodeGenerator", cp2, Array(slickDriver, jdbcDriver, url, outputDir, pkg, "user", "password"), s.log))
val fname = outputDir + "/models/db/Tables.scala"
Seq(file(fname))
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment