Browse Source

Kotlin/* remove techempower dependencies (#3502)

Michael Hixson 7 years ago
parent
commit
4868b6796a

+ 7 - 6
frameworks/Kotlin/hexagon/hexagon-jetty-postgresql.dockerfile

@@ -1,9 +1,10 @@
-FROM techempower/java:0.1
-FROM techempower/gradle:0.1
-
-ADD ./ /hexagon
+FROM gradle:4.6.0-jdk10
+USER root
 WORKDIR /hexagon
-RUN gradle -x test
+COPY src src
+COPY build.gradle build.gradle
+COPY gradle.properties gradle.properties
+RUN gradle --quiet --exclude-task test
 ENV DBSTORE postgresql
 ENV WEBENGINE jetty
-CMD build/install/hexagon/bin/hexagon
+CMD ["build/install/hexagon/bin/hexagon"]

+ 7 - 6
frameworks/Kotlin/hexagon/hexagon-undertow-mongodb.dockerfile

@@ -1,9 +1,10 @@
-FROM techempower/java:0.1
-FROM techempower/gradle:0.1
-
-ADD ./ /hexagon
+FROM gradle:4.6.0-jdk10
+USER root
 WORKDIR /hexagon
-RUN gradle -x test
+COPY src src
+COPY build.gradle build.gradle
+COPY gradle.properties gradle.properties
+RUN gradle --quiet --exclude-task test
 ENV DBSTORE mongodb
 ENV WEBENGINE undertow
-CMD build/install/hexagon/bin/hexagon
+CMD ["build/install/hexagon/bin/hexagon"]

+ 7 - 6
frameworks/Kotlin/hexagon/hexagon-undertow-postgresql.dockerfile

@@ -1,9 +1,10 @@
-FROM techempower/java:0.1
-FROM techempower/gradle:0.1
-
-ADD ./ /hexagon
+FROM gradle:4.6.0-jdk10
+USER root
 WORKDIR /hexagon
-RUN gradle -x test
+COPY src src
+COPY build.gradle build.gradle
+COPY gradle.properties gradle.properties
+RUN gradle --quiet --exclude-task test
 ENV DBSTORE postgresql
 ENV WEBENGINE undertow
-CMD build/install/hexagon/bin/hexagon
+CMD ["build/install/hexagon/bin/hexagon"]

+ 7 - 6
frameworks/Kotlin/hexagon/hexagon.dockerfile

@@ -1,9 +1,10 @@
-FROM techempower/java:0.1
-FROM techempower/gradle:0.1
-
-ADD ./ /hexagon
+FROM gradle:4.6.0-jdk10
+USER root
 WORKDIR /hexagon
-RUN gradle -x test
+COPY src src
+COPY build.gradle build.gradle
+COPY gradle.properties gradle.properties
+RUN gradle --quiet --exclude-task test
 ENV DBSTORE mongodb
 ENV WEBENGINE jetty
-CMD build/install/hexagon/bin/hexagon
+CMD ["build/install/hexagon/bin/hexagon"]

+ 6 - 11
frameworks/Kotlin/hexagon/src/main/kotlin/com/hexagonkt/BenchmarkStorage.kt

@@ -19,12 +19,7 @@ import kotlin.reflect.KProperty1
 
 internal const val WORLD_ROWS = 10000
 
-private val DB_HOST = systemSetting("DBHOST", "localhost")
-private val DB_NAME = setting("database", "hello_world")
-private val WORLD_NAME: String = setting("worldCollection", "world")
-private val FORTUNE_NAME: String = setting("fortuneCollection", "fortune")
-
-private val postgresqlUrl = "jdbc:postgresql://$DB_HOST/$DB_NAME?" +
+private val postgresqlUrl = "jdbc:postgresql://tfb-database/hello_world?" +
     "jdbcCompliantTruncation=false&" +
     "elideSetAutoCommits=true&" +
     "useLocalSessionState=true&" +
@@ -55,10 +50,10 @@ internal interface Store {
 }
 
 private class MongoDbStore : Store {
-    private val database = mongoDatabase("mongodb://$DB_HOST/$DB_NAME")
+    private val database = mongoDatabase("mongodb://tfb-database/hello_world")
 
-    private val worldRepository = repository(WORLD_NAME, World::class, World::_id)
-    private val fortuneRepository = repository(FORTUNE_NAME, Fortune::class, Fortune::_id)
+    private val worldRepository = repository("world", World::class, World::_id)
+    private val fortuneRepository = repository("fortune", Fortune::class, Fortune::_id)
 
     // TODO Find out why it fails when creating index '_id' with background: true
     private fun <T : Any> repository(name: String, type: KClass<T>, key: KProperty1<T, Int>) =
@@ -92,8 +87,8 @@ private class SqlStore(jdbcUrl: String) : Store {
         val config = HikariConfig()
         config.jdbcUrl = jdbcUrl
         config.maximumPoolSize =  setting("maximumPoolSize", 16)
-        config.username = setting("databaseUsername", "benchmarkdbuser")
-        config.password = setting("databasePassword", "benchmarkdbpass")
+        config.username = "benchmarkdbuser"
+        config.password = "benchmarkdbpass"
         DATA_SOURCE = HikariDataSource(config)
     }
 

+ 0 - 7
frameworks/Kotlin/hexagon/src/main/resources/service.yaml

@@ -4,11 +4,4 @@ serviceName : Hexagon Benchmark
 bindPort : 9090
 bindAddress : 0.0.0.0
 
-database : hello_world
-worldCollection : world
-fortuneCollection : fortune
-
-databaseUsername : benchmarkdbuser
-databasePassword : benchmarkdbpass
-
 maximumPoolSize : 32

+ 12 - 12
frameworks/Kotlin/http4k/http4k-apache.dockerfile

@@ -1,13 +1,13 @@
-FROM techempower/java:0.1
-FROM techempower/gradle:0.1
-
-ADD ./ /http4k
+FROM gradle:4.6.0-jdk10
+USER root
 WORKDIR /http4k
-RUN gradle clean build apache:uber
-CMD java \
-    -server \
-    -XX:+UseNUMA \
-    -XX:+UseParallelGC \
-    -XX:+AggressiveOpts \
-    -XX:+AlwaysPreTouch \
-    -jar apache/build/libs/http4k-apache-benchmark.jar
+COPY build.gradle build.gradle
+COPY settings.gradle settings.gradle
+COPY apache apache
+COPY core core
+COPY jetty jetty
+COPY netty netty
+COPY sunhttp sunhttp
+COPY undertow undertow
+RUN gradle --quiet build apache:uber
+CMD ["java", "-server", "-XX:+UseNUMA", "-XX:+UseParallelGC", "-XX:+AggressiveOpts", "-XX:+AlwaysPreTouch", "-jar", "apache/build/libs/http4k-apache-benchmark.jar"]

+ 12 - 12
frameworks/Kotlin/http4k/http4k-netty.dockerfile

@@ -1,13 +1,13 @@
-FROM techempower/java:0.1
-FROM techempower/gradle:0.1
-
-ADD ./ /http4k
+FROM gradle:4.6.0-jdk10
+USER root
 WORKDIR /http4k
-RUN gradle clean build netty:uber
-CMD java \
-    -server \
-    -XX:+UseNUMA \
-    -XX:+UseParallelGC \
-    -XX:+AggressiveOpts \
-    -XX:+AlwaysPreTouch \
-    -jar netty/build/libs/http4k-netty-benchmark.jar
+COPY build.gradle build.gradle
+COPY settings.gradle settings.gradle
+COPY apache apache
+COPY core core
+COPY jetty jetty
+COPY netty netty
+COPY sunhttp sunhttp
+COPY undertow undertow
+RUN gradle --quiet build netty:uber
+CMD ["java", "-server", "-XX:+UseNUMA", "-XX:+UseParallelGC", "-XX:+AggressiveOpts", "-XX:+AlwaysPreTouch", "-jar", "netty/build/libs/http4k-netty-benchmark.jar"]

+ 12 - 12
frameworks/Kotlin/http4k/http4k-sunhttp.dockerfile

@@ -1,13 +1,13 @@
-FROM techempower/java:0.1
-FROM techempower/gradle:0.1
-
-ADD ./ /http4k
+FROM gradle:4.6.0-jdk10
+USER root
 WORKDIR /http4k
-RUN gradle clean build sunhttp:uber
-CMD java \
-    -server \
-    -XX:+UseNUMA \
-    -XX:+UseParallelGC \
-    -XX:+AggressiveOpts \
-    -XX:+AlwaysPreTouch \
-    -jar sunhttp/build/libs/http4k-sunhttp-benchmark.jar
+COPY build.gradle build.gradle
+COPY settings.gradle settings.gradle
+COPY apache apache
+COPY core core
+COPY jetty jetty
+COPY netty netty
+COPY sunhttp sunhttp
+COPY undertow undertow
+RUN gradle --quiet build sunhttp:uber
+CMD ["java", "-server", "-XX:+UseNUMA", "-XX:+UseParallelGC", "-XX:+AggressiveOpts", "-XX:+AlwaysPreTouch", "-jar", "sunhttp/build/libs/http4k-sunhttp-benchmark.jar"]

+ 12 - 12
frameworks/Kotlin/http4k/http4k-undertow.dockerfile

@@ -1,13 +1,13 @@
-FROM techempower/java:0.1
-FROM techempower/gradle:0.1
-
-ADD ./ /http4k
+FROM gradle:4.6.0-jdk10
+USER root
 WORKDIR /http4k
-RUN gradle clean build undertow:uber
-CMD java \
-    -server \
-    -XX:+UseNUMA \
-    -XX:+UseParallelGC \
-    -XX:+AggressiveOpts \
-    -XX:+AlwaysPreTouch \
-    -jar undertow/build/libs/http4k-undertow-benchmark.jar
+COPY build.gradle build.gradle
+COPY settings.gradle settings.gradle
+COPY apache apache
+COPY core core
+COPY jetty jetty
+COPY netty netty
+COPY sunhttp sunhttp
+COPY undertow undertow
+RUN gradle --quiet build undertow:uber
+CMD ["java", "-server", "-XX:+UseNUMA", "-XX:+UseParallelGC", "-XX:+AggressiveOpts", "-XX:+AlwaysPreTouch", "-jar", "undertow/build/libs/http4k-undertow-benchmark.jar"]

+ 12 - 12
frameworks/Kotlin/http4k/http4k.dockerfile

@@ -1,13 +1,13 @@
-FROM techempower/java:0.1
-FROM techempower/gradle:0.1
-
-ADD ./ /http4k
+FROM gradle:4.6.0-jdk10
+USER root
 WORKDIR /http4k
-RUN gradle clean build jetty:uber
-CMD java \
-    -server \
-    -XX:+UseNUMA \
-    -XX:+UseParallelGC \
-    -XX:+AggressiveOpts \
-    -XX:+AlwaysPreTouch \
-    -jar jetty/build/libs/http4k-jetty-benchmark.jar
+COPY build.gradle build.gradle
+COPY settings.gradle settings.gradle
+COPY apache apache
+COPY core core
+COPY jetty jetty
+COPY netty netty
+COPY sunhttp sunhttp
+COPY undertow undertow
+RUN gradle --quiet build jetty:uber
+CMD ["java", "-server", "-XX:+UseNUMA", "-XX:+UseParallelGC", "-XX:+AggressiveOpts", "-XX:+AlwaysPreTouch", "-jar", "jetty/build/libs/http4k-jetty-benchmark.jar"]

+ 0 - 5
frameworks/Kotlin/ktor/ktor-base.dockerfile

@@ -1,5 +0,0 @@
-FROM techempower/maven:0.1
-
-ADD ./ /ktor
-WORKDIR /ktor
-RUN mvn clean package

+ 9 - 2
frameworks/Kotlin/ktor/ktor-cio.dockerfile

@@ -1,3 +1,10 @@
-FROM techempower/ktor-base:0.1
+FROM maven:3.5.3-jdk-10-slim as maven
+WORKDIR /ktor
+COPY pom.xml pom.xml
+COPY src src
+RUN mvn clean package -q
 
-CMD java -jar target/tech-empower-framework-benchmark-1.0-SNAPSHOT-cio-bundle.jar
+FROM openjdk:10-jre-slim
+WORKDIR /ktor
+COPY --from=maven /ktor/target/tech-empower-framework-benchmark-1.0-SNAPSHOT-cio-bundle.jar app.jar
+CMD ["java", "-jar", "app.jar"]

+ 9 - 2
frameworks/Kotlin/ktor/ktor-jetty.dockerfile

@@ -1,3 +1,10 @@
-FROM techempower/ktor-base:0.1
+FROM maven:3.5.3-jdk-10-slim as maven
+WORKDIR /ktor
+COPY pom.xml pom.xml
+COPY src src
+RUN mvn clean package -q
 
-CMD java -jar target/tech-empower-framework-benchmark-1.0-SNAPSHOT-jetty-bundle.jar
+FROM openjdk:10-jre-slim
+WORKDIR /ktor
+COPY --from=maven /ktor/target/tech-empower-framework-benchmark-1.0-SNAPSHOT-jetty-bundle.jar app.jar
+CMD ["java", "-jar", "app.jar"]

+ 9 - 2
frameworks/Kotlin/ktor/ktor.dockerfile

@@ -1,3 +1,10 @@
-FROM techempower/ktor-base:0.1
+FROM maven:3.5.3-jdk-10-slim as maven
+WORKDIR /ktor
+COPY pom.xml pom.xml
+COPY src src
+RUN mvn clean package -q
 
-CMD java -jar target/tech-empower-framework-benchmark-1.0-SNAPSHOT-netty-bundle.jar
+FROM openjdk:10-jre-slim
+WORKDIR /ktor
+COPY --from=maven /ktor/target/tech-empower-framework-benchmark-1.0-SNAPSHOT-netty-bundle.jar app.jar
+CMD ["java", "-jar", "app.jar"]

+ 6 - 5
frameworks/Kotlin/pronghorn/pronghorn.dockerfile

@@ -1,6 +1,7 @@
-FROM techempower/java:0.1
-FROM techempower/gradle:0.1
-
-ADD ./ /pronghorn
+FROM gradle:4.6.0-jdk10
+USER root
 WORKDIR /pronghorn
-CMD gradle --no-daemon clean run
+COPY build.gradle build.gradle
+COPY settings.gradle settings.gradle
+COPY src src
+CMD ["gradle", "--no-daemon", "run"]