-
Notifications
You must be signed in to change notification settings - Fork 12
/
Copy pathbuild.sbt
executable file
·131 lines (108 loc) · 4.49 KB
/
build.sbt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
name := """aton"""
version := "0.2.1"
scalaVersion := "2.11.8"
// Angular2 - Typescript options
incOptions := incOptions.value.withNameHashing(true)
updateOptions := updateOptions.value.withCachedResolution(cachedResoluton = true)
lazy val root = (project in file(".")).enablePlugins(PlayScala, DebianPlugin, RpmPlugin, LinuxPlugin, UniversalPlugin, WindowsPlugin, JDKPackagerPlugin, JavaServerAppPackaging, SbtWeb)
parallelExecution in Test := false
fork in Test := true
fork in run := true
// Linux builds
// - Debian
maintainer in Linux := "Camilo Sampedro <camilo.sampedro@udea.edu.co>"
packageSummary in Linux := "Aton, Laboratory Administrator"
// - RHEL
rpmRelease := "0.2.1"
rpmVendor := "co.edu.udea"
rpmUrl := Some("http://projectaton.github.io/AtonLab")
rpmLicense := Some("GPL 3.0")
packageDescription := "Computer laboratory administrator with useful tools. Built on top of SSH."
// Repositories
resolvers ++= Seq(
"JAnalyse Repository" at "http://www.janalyse.fr/repository/",
"Sonatype OSS Snapshots" at "https://oss.sonatype.org/content/repositories/snapshots",
"scalaz-bintray" at "http://dl.bintray.com/scalaz/releases"
)
// Server side dependencies
libraryDependencies ++= Seq(
"jp.t2v" %% "play2-auth" % "0.14.2",
"jp.t2v" %% "play2-auth-test" % "0.14.2" % "test",
cache,
ws,
"org.scalatestplus.play" %% "scalatestplus-play" % "1.5.1" % Test,
// https://mvnrepository.com/artifact/com.h2database/h2
"com.h2database" % "h2" % "1.4.193",
"com.typesafe.play" %% "play-slick" % "2.0.2",
"org.webjars" %% "webjars-play" % "2.5.0",
"com.typesafe.play" %% "play-slick-evolutions" % "2.0.2",
"com.typesafe.akka" %% "akka-actor" % "2.4.5",
"fr.janalyse" %% "janalyse-ssh" % "0.9.19" % "compile",
"org.mindrot" % "jbcrypt" % "0.3m",
// Tests dependencies
specs2,
"org.scalatestplus.play" %% "scalatestplus-play" % "1.5.1" % Test,
"org.scalatest" %% "scalatest" % "3.0.0" % "test",
"org.mockito" % "mockito-all" % "1.10.19",
// Password salting
"org.mindrot" % "jbcrypt" % "0.3m"
)
// Web dependencies
libraryDependencies ++= {
val ngVersion = "2.4.3"
Seq(
// Angular 2 dependencies
"org.webjars.npm" % "angular2" % "2.0.0-beta.21",
"org.webjars.npm" % "angular__common" % ngVersion,
"org.webjars.npm" % "angular__compiler" % ngVersion,
"org.webjars.npm" % "angular__core" % ngVersion,
"org.webjars.npm" % "angular__forms" % ngVersion,
"org.webjars.npm" % "angular__platform-browser-dynamic" % ngVersion,
"org.webjars.npm" % "angular__platform-browser" % ngVersion,
"org.webjars.npm" % "angular__http" % ngVersion,
"org.webjars.npm" % "angular__router" % "3.2.0",
"org.webjars.npm" % "js-cookie" % "2.1.3",
//"org.webjars.npm" % "angular__router" % ngVersion,
"org.webjars.npm" % "systemjs" % "0.19.39",
"org.webjars.npm" % "rxjs" % "5.0.0-beta.12",
"org.webjars.npm" % "es6-promise" % "3.1.2",
"org.webjars.npm" % "es6-shim" % "0.35.1",
"org.webjars.npm" % "reflect-metadata" % "0.1.8",
"org.webjars.npm" % "zone.js" % "0.6.25",
"org.webjars.npm" % "core-js" % "2.4.1",
"org.webjars.npm" % "symbol-observable" % "1.0.1",
// Traceur transpiler
"org.webjars.npm" % "traceur" % "0.0.111",
// Typescript
"org.webjars.npm" % "typescript" % "2.0.3",
// tslint dependency
"org.webjars.npm" % "tslint-eslint-rules" % "2.1.0",
"org.webjars.npm" % "codelyzer" % "0.0.28",
"org.webjars.npm" % "types__jasmine" % "2.2.26-alpha" % "test",
// tests
"org.webjars.npm" % "jasmine-core" % "2.4.1",
// Bootstrap
"org.webjars" % "bootstrap" % "3.3.6",
// Semantic UI with Angular2
"org.webjars" % "Semantic-UI" % "2.2.2",
"org.webjars.npm" % "ng-semantic" % "1.1.13",
// JQuery
"org.webjars" % "jquery" % "3.1.0",
// RequireJS
"org.webjars" % "requirejs" % "2.2.0",
// Ionicons
"org.webjars" % "ionicons" % "2.0.1"
)
}
dependencyOverrides += "org.webjars.npm" % "minimatch" % "3.0.0"
// the typescript typing information is by convention in the typings directory
// It provides ES6 implementations. This is required when compiling to ES5.
typingsFile := Some(baseDirectory.value / "typings" / "index.d.ts")
// use the webjars npm directory (target/web/node_modules ) for resolution of module imports of angular2/core etc
resolveFromWebjarsNodeModulesDir := true
// use the combined tslint and eslint rules plus ng2 lint rules
(rulesDirectories in tslint) := Some(List(
tslintEslintRulesDir.value,
ng2LintRulesDir.value
))
routesGenerator := InjectedRoutesGenerator