import org.bigbluebutton.build._ import scalariform.formatter.preferences._ import com.typesafe.sbt.SbtScalariform import com.typesafe.sbt.SbtScalariform.ScalariformKeys import NativePackagerHelper._ import com.typesafe.sbt.SbtNativePackager.autoImport._ enablePlugins(JavaServerAppPackaging) enablePlugins(UniversalPlugin) enablePlugins(DebianPlugin) version := "0.0.2" val compileSettings = Seq( organization := "org.bigbluebutton", scalacOptions ++= List( "-unchecked", "-deprecation", "-Xlint", "-Ywarn-dead-code", "-language:_", "-target:jvm-1.8", "-encoding", "UTF-8" ), javacOptions ++= List( "-Xlint:unchecked", "-Xlint:deprecation" ) ) resolvers ++= Seq( "spray repo" at "http://repo.spray.io/", "blindside-repos" at "http://blindside.googlecode.com/svn/repository/" ) resolvers += Resolver.sonatypeRepo("releases") publishTo := Some(Resolver.file("file", new File(Path.userHome.absolutePath+"/dev/repo/maven-repo/releases" )) ) // We want to have our jar files in lib_managed dir. // This way we'll have the right path when we import // into eclipse. retrieveManaged := true testOptions in Test += Tests.Argument(TestFrameworks.Specs2, "html", "console", "junitxml") testOptions in Test += Tests.Argument(TestFrameworks.ScalaTest, "-h", "target/scalatest-reports") Seq(Revolver.settings: _*) lazy val bbbFseslAkka = (project in file(".")).settings(name := "bbb-fsesl-akka", libraryDependencies ++= Dependencies.runtime).settings(compileSettings) scalariformAutoformat := false scalariformPreferences := scalariformPreferences.value .setPreference(AlignSingleLineCaseStatements, true) .setPreference(DoubleIndentConstructorArguments, true) .setPreference(AlignParameters, true) //----------- // Packaging // // Reference: // https://github.com/muuki88/sbt-native-packager-examples/tree/master/akka-server-app // http://www.scala-sbt.org/sbt-native-packager/index.html //----------- mainClass := Some("org.bigbluebutton.Boot") maintainer in Linux := "Richard Alam " packageSummary in Linux := "BigBlueButton FS-ESL (Akka)" packageDescription := """BigBlueButton FreeSWITCH ESL in Akka.""" val user = "bigbluebutton" val group = "bigbluebutton" // user which will execute the application daemonUser in Linux := user // group which will execute the application daemonGroup in Linux := group javaOptions in Universal ++= Seq("-J-Xms130m", "-J-Xmx256m", "-Dconfig.file=conf/application.conf", "-Dlogback.configurationFile=conf/logback.xml") debianPackageDependencies in Debian ++= Seq("java8-runtime-headless", "bash")