Simplify configuration

This commit is contained in:
Hubert Van De Walle 2021-02-27 20:34:44 +01:00
parent f255064533
commit ea110d51d3
6 changed files with 9 additions and 9 deletions

View File

@ -24,6 +24,8 @@ COPY --from=jdkbuilder /myjdk /myjdk
COPY app/build/libs/app-with-dependencies*.jar /app/simplenotes.jar COPY app/build/libs/app-with-dependencies*.jar /app/simplenotes.jar
WORKDIR /app WORKDIR /app
ENV SERVER_HOST 0.0.0.0
CMD [ \ CMD [ \
"/myjdk/bin/java", \ "/myjdk/bin/java", \
"--add-opens", \ "--add-opens", \

View File

@ -1,6 +1,5 @@
db: db:
jdbc-url: jdbc:h2:./notes-db; jdbc-url: jdbc:h2:./notes-db;
driver-class-name: org.h2.Driver
username: h2 username: h2
password: '' password: ''
connection-timeout: 3000 connection-timeout: 3000

View File

@ -7,14 +7,13 @@ import java.util.concurrent.TimeUnit
@ConfigurationProperties("db") @ConfigurationProperties("db")
data class DataSourceConfig @ConfigurationInject constructor( data class DataSourceConfig @ConfigurationInject constructor(
val jdbcUrl: String, val jdbcUrl: String,
val driverClassName: String,
val username: String, val username: String,
val password: String, val password: String,
val maximumPoolSize: Int, val maximumPoolSize: Int,
val connectionTimeout: Long, val connectionTimeout: Long,
) { ) {
override fun toString() = "DataSourceConfig(jdbcUrl='$jdbcUrl', driverClassName='$driverClassName', " + override fun toString() = "DataSourceConfig(jdbcUrl='$jdbcUrl', username='$username', password='***', " +
"username='$username', password='***', maximumPoolSize=$maximumPoolSize, connectionTimeout=$connectionTimeout)" "maximumPoolSize=$maximumPoolSize, connectionTimeout=$connectionTimeout)"
} }
@ConfigurationProperties("jwt") @ConfigurationProperties("jwt")

View File

@ -32,9 +32,7 @@ services:
- .env - .env
environment: environment:
- TZ=Europe/Brussels - TZ=Europe/Brussels
- SERVER_HOST=0.0.0.0
- DB_JDBC_URL=jdbc:mariadb://db:3306/simplenotes - DB_JDBC_URL=jdbc:mariadb://db:3306/simplenotes
- DB_DRIVER_CLASS_NAME=org.mariadb.jdbc.Driver
- DB_USERNAME=simplenotes - DB_USERNAME=simplenotes
# .env: # .env:
# - JWT_SECRET # - JWT_SECRET

View File

@ -23,7 +23,11 @@ class PersistenceModule {
internal fun dataSource(conf: DataSourceConfig): HikariDataSource { internal fun dataSource(conf: DataSourceConfig): HikariDataSource {
val hikariConfig = HikariConfig().also { val hikariConfig = HikariConfig().also {
it.jdbcUrl = conf.jdbcUrl it.jdbcUrl = conf.jdbcUrl
it.driverClassName = conf.driverClassName it.driverClassName = when {
conf.jdbcUrl.startsWith("jdbc:mariadb") -> "org.mariadb.jdbc.Driver"
conf.jdbcUrl.startsWith("jdbc:h2") -> "org.h2.Driver"
else -> error("Unsupported database")
}
it.username = conf.username it.username = conf.username
it.password = conf.password it.password = conf.password
it.maximumPoolSize = conf.maximumPoolSize it.maximumPoolSize = conf.maximumPoolSize

View File

@ -7,7 +7,6 @@ class KMariadbContainer : MariaDBContainer<KMariadbContainer>("mariadb:10.5.5")
fun h2dataSourceConfig() = DataSourceConfig( fun h2dataSourceConfig() = DataSourceConfig(
jdbcUrl = "jdbc:h2:mem:regular;DB_CLOSE_DELAY=-1;", jdbcUrl = "jdbc:h2:mem:regular;DB_CLOSE_DELAY=-1;",
driverClassName = "org.h2.Driver",
username = "h2", username = "h2",
password = "", password = "",
maximumPoolSize = 2, maximumPoolSize = 2,
@ -16,7 +15,6 @@ fun h2dataSourceConfig() = DataSourceConfig(
fun mariadbDataSourceConfig(jdbcUrl: String) = DataSourceConfig( fun mariadbDataSourceConfig(jdbcUrl: String) = DataSourceConfig(
jdbcUrl = jdbcUrl, jdbcUrl = jdbcUrl,
driverClassName = "org.mariadb.jdbc.Driver",
username = "test", username = "test",
password = "test", password = "test",
maximumPoolSize = 2, maximumPoolSize = 2,