diff --git a/api/resources/application.dev.yaml b/api/resources/application.dev.yaml
new file mode 100644
index 0000000..0912c4f
--- /dev/null
+++ b/api/resources/application.dev.yaml
@@ -0,0 +1,21 @@
+database:
+ host: localhost
+ port: 3306
+ name: notes
+ username: notes
+ password: notes
+
+server:
+ host: 127.0.0.1
+ port: 8081
+ cors: true
+
+jwt:
+ secret: 9Io9kvgIedOcLdUvKl31OKf51jdTZcFHJFgqvEpfJuI= # Can be generated with `openssl rand -base64 32`
+ auth:
+ validity: 1
+ unit: HOURS
+ refresh:
+ validity: 15
+ unit: DAYS
+
diff --git a/api/resources/application.yaml b/api/resources/application.prod.yaml
similarity index 80%
rename from api/resources/application.yaml
rename to api/resources/application.prod.yaml
index ce067b6..7fc8c2e 100644
--- a/api/resources/application.yaml
+++ b/api/resources/application.prod.yaml
@@ -1,5 +1,3 @@
-env: staging
-
database:
host: ${MYSQL_HOST}
port: 3306
@@ -13,7 +11,7 @@ server:
cors: ${CORS:-true}
jwt:
- secret: ${JWT_SECRET}
+ secret: ${JWT_SECRET} # Can be generated with `openssl rand -base64 32`
auth:
validity: 1
unit: HOURS
diff --git a/api/resources/logback.xml b/api/resources/logback.xml
index 48681f1..d38ae26 100644
--- a/api/resources/logback.xml
+++ b/api/resources/logback.xml
@@ -8,7 +8,8 @@
-
+
+
diff --git a/api/src/NotesApplication.kt b/api/src/NotesApplication.kt
index 2a8c825..7774f5f 100644
--- a/api/src/NotesApplication.kt
+++ b/api/src/NotesApplication.kt
@@ -32,7 +32,7 @@ fun main() {
val config by kodein.instance()
val logger by kodein.instance()
logger.info("Running application with configuration $config")
- logger.info("Kodein bindings\n${kodein.container.tree.bindings.description()}")
+ logger.debug("Kodein bindings\n${kodein.container.tree.bindings.description()}")
val migration by kodein.instance()
migration.migrate()
serve(kodein)
@@ -58,20 +58,8 @@ fun serve(kodein: Kodein) {
fun Application.module() {
loadFeatures(kodein)
- log.debug(kodein.container.tree.bindings.description())
-
routing {
registerRoutes(kodein)
}
- val root = feature(Routing)
- val allRoutes = allRoutes(root)
- allRoutes.forEach {
- println(it.toString())
- }
-
}
-
-fun allRoutes(root: Route): List {
- return listOf(root) + root.children.flatMap { allRoutes(it) }
-}
\ No newline at end of file
diff --git a/api/src/features/ConfigurationFeature.kt b/api/src/features/ConfigurationFeature.kt
index 853f9da..b004a4b 100644
--- a/api/src/features/ConfigurationFeature.kt
+++ b/api/src/features/ConfigurationFeature.kt
@@ -9,6 +9,7 @@ import org.kodein.di.Kodein
import org.kodein.di.generic.bind
import org.kodein.di.generic.instance
import org.kodein.di.generic.singleton
+import org.kodein.di.generic.with
import java.util.concurrent.TimeUnit
import javax.sql.DataSource
@@ -16,7 +17,11 @@ import javax.sql.DataSource
* [Kodein] controller module containing the app configuration
*/
val configurationModule = Kodein.Module(name = "Configuration") {
- bind() from singleton { ConfigLoader().loadConfigOrThrow("/application.yaml") }
+ constant("config file") with "/application.dev.yaml" // FIXME
+ bind() from singleton {
+ val configFile by this.kodein.instance(tag = "config file")
+ ConfigLoader().loadConfigOrThrow(configFile)
+ }
bind(tag = "auth") with singleton { configureAuthJwt(this.kodein) }
bind(tag = "refresh") with singleton { configureRefreshJwt(this.kodein) }
bind() with singleton { configureDatasource(this.kodein) }
@@ -58,4 +63,4 @@ private fun configureDatasource(kodein: Kodein): DataSource {
}
return HikariDataSource(hikariConfig)
-}
\ No newline at end of file
+}