🚧 Påbegynt database konfigurering

Co-authored-by: Hege Haavaldsen <hege.haavaldsen@nav.no>
Co-authored-by: Helene Arnesen <helene.arnesen@nav.no>
Co-authored-by: Sindre Kjelsrud <sindre.kjelsrud@nav.no>
Co-authored-by: Amalie Mansåker <amalie.erdal.mansaker@nav.no>
This commit is contained in:
Markus Johansen 2023-07-10 14:06:49 +02:00
parent 73a9490a4d
commit 23233121d0
4 changed files with 59 additions and 4 deletions

View file

@ -0,0 +1,26 @@
package no.nav.helse.sprik.db
import com.zaxxer.hikari.HikariConfig
import com.zaxxer.hikari.HikariDataSource
import no.nav.helse.sprik.db.Environment.Database.host
import no.nav.helse.sprik.db.Environment.Database.name
import no.nav.helse.sprik.db.Environment.Database.port
class Database(dbconfig: HikariConfig) {
val dataSource by lazy { HikariDataSource(dbconfig) }
}
private fun dbconfig() = HikariConfig().apply {
jdbcUrl = DB_URL
}
val DB_URL = "jdbc:postgresql://%s:%s/%s".format(host, port, name)
object Environment {
object Database {
private val env = System.getenv()
val host = requireNotNull(env["DATABASE_HOST"]) { "Host må settes" }
val port = requireNotNull(env["DATABASE_PORT"]) { "Port må settes" }
val name = requireNotNull(env["DATABASE_DATABASE"]) { "Databasenavn må settes" }
}
}

View file

@ -0,0 +1,12 @@
DO
$$
BEGIN
IF EXISTS
(SELECT 1 FROM pg_roles WHERE rolname = 'cloudsqliamuser')
THEN
GRANT ALL PRIVILEGES ON TABLE public.flyway_schema_history TO cloudsqliamuser;
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL ON TABLES TO cloudsqliamuser;
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL ON SEQUENCES TO cloudsqliamuser;
END IF;
END
$$;