package Ġac . ob l . pect op ah . boot . server Ċ Ċ import Ġac . ob l . pect op ah . boot . app Logger Ċ import Ġcom . zaxxer . hikari . HikariConfig Ċ import Ġcom . zaxxer . hikari . Hikari DataSource Ċ import Ġio . ktor . server . application .* Ċ import Ġorg . jetbrains . ex posed . sql . Database Ċ Ċ fun ĠApplication . configure Db () Ġ{ ĊĠĠĠ ĠDatabase . connect ( hikari ()) Ċ } Ċ Ċ private Ġfun Ġh ikari (): ĠH ikari DataSource Ġ{ ĊĠĠĠ Ġval Ġconfig Ġ= ĠH ikariConfig ("/ hikari . properties ") ĊĠĠĠ Ġif Ġ( System . getenv (" DATABASE _ DB ") Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġdatabase Db Ġ= ĠSystem . getenv (" DATABASE _ DB ") ĊĠĠĠĠĠĠĠ Ġconfig . jdbc Url Ġ= Ġ" jdbc : postgresql :// $ database Db " ĊĠĠĠ Ġ} ĊĠĠĠ Ġif Ġ( System . getenv (" DATABASE _ USER ") Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠ Ġconfig . username Ġ= ĠSystem . getenv (" DATABASE _ USER ") ĊĠĠĠ Ġ} ĊĠĠĠ Ġif Ġ( System . getenv (" DATABASE _ PASS ") Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠ Ġconfig . password Ġ= ĠSystem . getenv (" DATABASE _ PASS ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġconfig . validate () ĊĊĠĠĠ Ġapp Logger . info (" Connecting Ġto : Ġ${ config . jdbc Url }") ĊĊĠĠĠ Ġreturn ĠH ikari DataSource ( config ) Ċ } Ċ