Skip to content

Commit

Permalink
Add support for slick 3.5
Browse files Browse the repository at this point in the history
  • Loading branch information
gonmarques committed Aug 8, 2023
1 parent 9f52914 commit 9d5e3c8
Show file tree
Hide file tree
Showing 18 changed files with 48 additions and 305 deletions.
18 changes: 18 additions & 0 deletions .circleci/config.yml
@@ -0,0 +1,18 @@
version: 2.1
jobs:
build:
machine:
image: ubuntu-2004:202010-01
working_directory: ~/build
steps:
- checkout
- run:
name: Build and test
command: >
sbt compile &&
sbt "project db2" docker &&
sbt "project itsetup" dockerComposeUp &&
sbt coverage test coverageReport coveralls &&
sbt alldbs:test &&
sbt "project itsetup" dockerComposeStop &&
sbt coverageReport coveralls
2 changes: 2 additions & 0 deletions .gitignore
Expand Up @@ -2,3 +2,5 @@
target/
slick-repo.iml
src/docker/oracle-build/docker-images/
derbyDB/
derby.log
40 changes: 0 additions & 40 deletions .travis.yml

This file was deleted.

2 changes: 1 addition & 1 deletion appveyor.yml
Expand Up @@ -25,7 +25,7 @@ install:
Add-Type -AssemblyName System.IO.Compression.FileSystem
if (!(Test-Path -Path "C:\sbt" )) {
(new-object System.Net.WebClient).DownloadFile(
'https://dl.bintray.com/sbt/native-packages/sbt/0.13.11/sbt-0.13.11.zip',
'https://github.com/sbt/sbt/releases/download/v0.13.18/sbt-0.13.18.zip',
'C:\sbt.zip'
)
[System.IO.Compression.ZipFile]::ExtractToDirectory("C:\sbt.zip", "C:\sbt")
Expand Down
38 changes: 11 additions & 27 deletions project/Build.scala
Expand Up @@ -25,6 +25,7 @@
import sbt.Keys._
import sbt._
import scoverage.ScoverageKeys._
import org.scoverage.coveralls.Imports.CoverallsKeys._
import com.typesafe.sbt.pgp.PgpKeys._

object Build extends Build {
Expand All @@ -33,7 +34,7 @@ object Build extends Build {

val dependencies = Seq(
"org.scalatest" %% "scalatest" % "3.0.8" % "test",
"com.h2database" % "h2" % "1.4.192" % "test",
"com.h2database" % "h2" % "2.2.220" % "test",
"mysql" % "mysql-connector-java" % "5.1.38" % "test",
"org.postgresql" % "postgresql" % "9.4.1211" % "test",
"org.slf4j" % "slf4j-simple" % "1.7.21" % "test",
Expand All @@ -44,15 +45,14 @@ object Build extends Build {

lazy val project: Project =
Project("root", file("."))
.configs(AllDbsTest, Db2Test, SqlServerTest)
.configs(AllDbsTest, SqlServerTest)
.settings(inConfig(AllDbsTest)(Defaults.testTasks): _*)
.settings(inConfig(Db2Test)(Defaults.testTasks): _*)
.settings(inConfig(SqlServerTest)(Defaults.testTasks): _*)
.settings(

name := "slick-repo",
description := "CRUD Repositories for Slick based persistence Scala projects",
version := "1.6.2-SNAPSHOT",
version := "1.7.1-SNAPSHOT",

scalaVersion := "2.12.6",
crossScalaVersions := Seq("2.13.0", "2.12.6", "2.11.12", "2.10.7"),
Expand All @@ -71,9 +71,9 @@ object Build extends Build {

parallelExecution in Test := false,
coverageEnabled := true,
coverallsToken := Some("w171Cv0CW3ekjA5ASwb0mzWcUDoNaw93X"),

testOptions in Test := Seq(Tests.Filter(baseFilter)),
testOptions in Db2Test := Seq(Tests.Filter(db2Filter)),
testOptions in AllDbsTest := Seq(Tests.Filter(allDbsFilter)),
testOptions in SqlServerTest := Seq(Tests.Filter(sqlServerFilter)),

Expand Down Expand Up @@ -135,16 +135,10 @@ object Build extends Build {

)

lazy val mysql: Project =
Project("mysql", file("src/docker/mysql"))
lazy val itsetup: Project =
Project("itsetup", file("src/docker/itsetup"))
.settings(
name := "mysql"
)

lazy val oracleBuild: Project =
Project("oracle-build", file("src/docker/oracle-build"))
.settings(
name := "oracle-build"
name := "itsetup"
)

lazy val db2: Project =
Expand All @@ -153,32 +147,22 @@ object Build extends Build {
name := "db2"
)

lazy val postgres: Project =
Project("postgres", file("src/docker/postgres"))
.settings(
name := "postgres"
)

val dbPrefixes = Seq("MySQL", "Oracle", "Postgres", "Derby", "Hsql")
val db2Prefix = Seq("DB2")
val dbPrefixes = Seq("MySQL", "Oracle", "Postgres", "Derby", "Hsql", "DB2")
val sqlServerPrefix = Seq("SQLServer")
lazy val AllDbsTest: Configuration = config("alldbs") extend Test
lazy val Db2Test: Configuration = config("db2") extend Test
lazy val SqlServerTest: Configuration = config("sqlserver") extend Test

def testName(name: String): String = name.substring(name.lastIndexOf('.') + 1)

def allDbsFilter(name: String): Boolean = dbPrefixes.exists(p => testName(name) startsWith p)

def db2Filter(name: String): Boolean = db2Prefix.exists(p => testName(name) startsWith p)

def sqlServerFilter(name: String): Boolean = sqlServerPrefix.exists(p => testName(name) startsWith p)

def baseFilter(name: String): Boolean = !allDbsFilter(name) && !db2Filter(name) && !sqlServerFilter(name)
def baseFilter(name: String): Boolean = !allDbsFilter(name) && !sqlServerFilter(name)

def getSlickDependency(slickComponent: String, version: String): ModuleID = {
"com.typesafe.slick" %
(slickComponent + "_" + version.substring(0, version.lastIndexOf('.'))) %
(if(version.startsWith("2.10")) {"3.1.1"} else {"3.3.2"})
(if(version.startsWith("2.10")) {"3.1.1"} else {"3.5.0-M4"})
}
}
2 changes: 1 addition & 1 deletion project/plugins.sbt
Expand Up @@ -24,7 +24,7 @@

addSbtPlugin("se.marcuslonnberg" % "sbt-docker" % "1.4.1")

addSbtPlugin("com.tapad" % "sbt-docker-compose" % "1.0.19")
addSbtPlugin("com.tapad" % "sbt-docker-compose" % "1.0.35")

addSbtPlugin("org.scoverage" %% "sbt-scoverage" % "1.6.0")

Expand Down
5 changes: 1 addition & 4 deletions src/docker/db2/build.sbt
Expand Up @@ -23,14 +23,11 @@
*/

enablePlugins(DockerPlugin)
enablePlugins(com.tapad.docker.DockerComposePlugin)

dockerfile in docker := {
new sbtdocker.mutable.Dockerfile {
from("ibmcom/db2express-c:10.5.0.5-3.10.0")
from("ibmoms/db2express-c:10.5.0.5-3.10.0")
expose(50000)
copy(baseDirectory(_ / "start.sh").value, file("start.sh"))
}
}

dockerImageCreationTask := docker.value
32 changes: 0 additions & 32 deletions src/docker/db2/docker-compose.yml

This file was deleted.

Expand Up @@ -22,4 +22,4 @@
* SOFTWARE.
*/

addSbtPlugin("se.marcuslonnberg" % "sbt-docker" % "1.4.0")
enablePlugins(com.tapad.docker.DockerComposePlugin)
Expand Up @@ -20,25 +20,33 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.

version: '3.3'
version: '3.2'
services:
mysql:
image: mysql/mysql
image: mysql:5.7.43
ports:
- "22222:3306"
environment:
- MYSQL_ROOT_PASSWORD=123456
- MYSQL_DATABASE=SLICKREPO
oracle:
image: oracle/database:11.2.0.2-xe
image: gvenzl/oracle-xe:11
shm_size: '1gb'
ports:
- "22223:1521"
environment:
- ORACLE_PWD=oracle
- ORACLE_PASSWORD=oracle
postgres:
image: postgres/postgres
image: postgres:9.6.0
ports:
- "22225:5432"
environment:
- POSTGRES_PASSWORD=123456
db2:
image: db2/db2
ports:
- "22224:50000"
environment:
- DB2INST1_PASSWORD=345TrEdcvb
- LICENSE=accept
command: ./start.sh
File renamed without changes.
35 changes: 0 additions & 35 deletions src/docker/mysql/build.sbt

This file was deleted.

56 changes: 0 additions & 56 deletions src/docker/oracle-build/build.sbt

This file was deleted.

Binary file removed src/docker/oracle-build/docker-images.zip
Binary file not shown.
23 changes: 0 additions & 23 deletions src/docker/oracle-build/project/build.properties

This file was deleted.

0 comments on commit 9d5e3c8

Please sign in to comment.