import Ġcom . github . jen gel man . gradle . plugins . shadow . tasks . Shadow Jar Ċ import Ġorg . jetbrains . kotlin . gradle . tasks . Kotlin Compile Ċ Ċ group Ġ= Ġ" no . nav . sy fo " Ċ version Ġ= Ġ" 1 . 0 " Ċ Ċ val Ġk lu ent Version Ġ= Ġ" 1 . 5 9 " Ċ val Ġk tor Version Ġ= Ġ" 1 . 6 . 0 " Ċ val Ġprometheus Version Ġ= Ġ" 0 . 8 . 1 " Ċ val Ġmicro meter Version Ġ= Ġ" 1 . 7 . 3 " Ċ val Ġspe k Version Ġ= Ġ" 2 . 0 . 9 " Ċ val Ġmock k Version Ġ= Ġ" 1 . 1 0 . 2 " Ċ val Ġs lf 4 j Version Ġ= Ġ" 1 . 7 . 3 0 " Ċ val Ġlog back Version Ġ= Ġ" 1 . 2 . 3 " Ċ val Ġlog stash Encoder Version Ġ= Ġ" 6 . 3 " Ċ val Ġpostgres Version Ġ= Ġ" 4 2 . 2 . 1 3 " Ċ val Ġh ikari Version Ġ= Ġ" 4 . 0 . 1 " Ċ val Ġfly way Version Ġ= Ġ" 7 . 5 . 2 " Ċ val Ġvault Jdbc Version Ġ= Ġ" 1 . 3 . 7 " Ċ val Ġj ack son Version Ġ= Ġ" 2 . 1 1 . 3 " Ċ val Ġpostgres Embedded Version Ġ= Ġ" 0 . 1 3 . 3 " Ċ val Ġkafka Version Ġ= Ġ" 2 . 7 . 0 " Ċ val Ġkafka Embedded Version Ġ= Ġ" 2 . 4 . 0 " Ċ val Ġav ro Version Ġ= Ġ" 1 . 8 . 2 " Ċ val Ġcon fluent Version Ġ= Ġ" 5 . 5 . 0 " Ċ val Ġbru ker not ifik as jon er Schema Version Ġ= Ġ" 1 . 2 0 2 1 . 0 6 . 2 1 - 0 8 . 2 1 - 7 9 9 8 a 3 9 f 2 1 6 a " Ċ Ċ val Ġgithub User : ĠString Ġby Ġproject Ċ val Ġgithub Password : ĠString Ġby Ġproject Ċ Ċ plugins Ġ{ ĊĠĠĠ Ġkotlin (" jvm ") Ġversion Ġ" 1 . 5 . 3 1 " ĊĠĠĠ Ġid (" org . jetbrains . kotlin . plugin . al lopen ") Ġversion Ġ" 1 . 5 . 3 1 " ĊĠĠĠ Ġid (" com . diff plug . gradle . spot less ") Ġversion Ġ" 3 . 1 8 . 0 " ĊĠĠĠ Ġid (" com . github . john ren gel man . shadow ") Ġversion Ġ" 7 . 1 . 0 " Ċ } Ċ Ċ all Open Ġ{ ĊĠĠĠ Ġannotation (" no . nav . sy fo . annotation . Mock able ") Ċ } Ċ Ċ repositories Ġ{ ĊĠĠĠ Ġmaven Central () ĊĠĠĠ Ġmaven ( url Ġ= Ġ" https :// jit pack . io ") ĊĠĠĠ Ġmaven ( url Ġ= Ġ" https :// packages . con fluent . io / maven /") ĊĠĠĠ Ġmaven ( url Ġ= Ġ" https :// repo . ade o . no / repository / maven - releases /") ĊĠĠĠ Ġmaven ( url Ġ= Ġ" https :// github . com / nav ik t / vault - jdbc ") Ċ } Ċ Ċ dependencies Ġ{ ĊĊĠĠĠ Ġ// ĠKotlin Ġ/ ĠServer ĊĠĠĠ Ġimplementation (" io . ktor : ktor - server - netty :$ ktor Version ") ĊĠĠĠ Ġimplementation (" io . ktor : ktor - jackson :$ ktor Version ") ĊĠĠĠ Ġimplementation (" io . ktor : ktor - client - apache :$ ktor Version ") ĊĠĠĠ Ġimplementation (" io . ktor : ktor - client - core :$ ktor Version ") ĊĠĠĠ Ġimplementation (" io . ktor : ktor - client - c io :$ ktor Version ") ĊĠĠĠ Ġimplementation (" io . ktor : ktor - client - jackson :$ ktor Version ") ĊĠĠĠ Ġimplementation (" io . ktor : ktor - serialization :$ ktor Version ") ĊĠĠĠ Ġimplementation (" io . ktor : ktor - auth :$ ktor Version ") ĊĠĠĠ Ġimplementation (" io . ktor : ktor - auth - jwt :$ ktor Version ") ĊĊĠĠĠ Ġ// ĠLogging ĊĠĠĠ Ġimplementation (" org . slf 4 j : slf 4 j - api :$ slf 4 j Version ") ĊĠĠĠ Ġimplementation (" ch . qos . log back : log back - classic :$ log back Version ") ĊĠĠĠ Ġimplementation (" net . logstash . log back : logstash - log back - encoder :$ logstash Encoder Version ") ĊĊĠĠĠ Ġ// ĠMetrics Ġand ĠPrometheus ĊĠĠĠ Ġimplementation (" io . micro meter : micro meter - registry - prometheus :$ micro meter Version ") ĊĠĠĠ Ġimplementation (" io . prometheus : simple client _ common :$ prometheus Version ") ĊĠĠĠ Ġimplementation (" io . prometheus : simple client _ hot spot :$ prometheus Version ") ĊĠĠĠ Ġimplementation (" io . prometheus : simple client _ push gateway :$ prometheus Version ") ĊĊĠĠĠ Ġ// ĠDatabase ĊĠĠĠ Ġimplementation (" org . postgresql : postgresql :$ postgres Version ") ĊĠĠĠ Ġimplementation (" com . zaxxer : Hikari CP :$ hikari Version ") ĊĠĠĠ Ġimplementation (" org . fly way db : fly way - core :$ fly way Version ") ĊĠĠĠ Ġimplementation (" no . nav : vault - jdbc :$ vault Jdbc Version ") ĊĊĠĠĠ Ġ// ĠJSON Ġparsing ĊĠĠĠ Ġimplementation (" com . fasterxml . jackson . core : jackson - databind :$ jackson Version ") ĊĠĠĠ Ġimplementation (" com . fasterxml . jackson . module : jackson - module - kotlin :$ jackson Version ") ĊĠĠĠ Ġimplementation (" com . fasterxml . jackson . datatype : jackson - datatype - js r 3 1 0 :$ jackson Version ") ĊĠĠĠ Ġimplementation (" com . fasterxml . jackson . module : jackson - module - kotlin :$ jackson Version ") ĊĊĠĠĠ Ġ// Kafka ĊĠĠĠ Ġimplementation (" org . apache . kafka : kafka - clients :$ kafka Version ") ĊĠĠĠ Ġimplementation (" org . apache . kafka : kafka _ 2 . 1 2 :$ kafka Version ") ĊĠĠĠ Ġimplementation (" io . con fluent : kafka - streams - avro - serde :$ con fluent Version ") ĊĠĠĠ Ġimplementation (" io . con fluent : kafka - schema - registry :$ con fluent Version ") Ġ{ ĊĠĠĠĠĠĠĠĠĠ Ġexclude ( group Ġ= Ġ" org . slf 4 j ", Ġmodule Ġ= Ġ" slf 4 j - log 4 j 1 2 ") ĊĠĠĠ Ġ} ĊĠĠĠ Ġimplementation (" org . apache . avro : avro :$ avro Version ") ĊĠĠĠ Ġimplementation (" com . github . nav ik t : br uk er not ifik as jon - schemas :$ br uk er not ifik as jon er Schema Version ") ĊĊĠĠĠ Ġ// ĠTest ĊĠĠĠ Ġtest Implementation (" org . am sh ove . k lu ent : k lu ent :$ k lu ent Version ") ĊĠĠĠ Ġtest Implementation (" org . spe k framework . spe k 2 : spe k - dsl - jvm :$ spe k Version ") ĊĠĠĠ Ġtest Implementation (" io . ktor : ktor - server - test - host :$ ktor Version ") Ġ{ ĊĠĠĠĠĠĠĠ Ġexclude ( group Ġ= Ġ" ch . qos . log back ", Ġmodule Ġ= Ġ" log back - classic ") ĊĠĠĠ Ġ} ĊĠĠĠ Ġtest Implementation (" io . mock k : mock k :$ mock k Version ") ĊĠĠĠ Ġtest Implementation (" com . opent able . components : ot j - pg - embedded :$ postgres Embedded Version ") ĊĠĠĠ Ġtest Implementation (" no . nav : kafka - embedded - env :$ kafka Embedded Version ") ĊĠĠĠ Ġtest Runtime Only (" org . spe k framework . spe k 2 : spe k - runtime - jvm :$ spe k Version ") ĊĠĠĠ Ġtest Runtime Only (" org . spe k framework . spe k 2 : spe k - runner - junit 5 :$ spe k Version ") Ċ } Ċ Ċ configurations . implementation Ġ{ ĊĠĠĠ Ġexclude ( group Ġ= Ġ" com . fasterxml . jackson . module ", Ġmodule Ġ= Ġ" jackson - module - scala _ 2 . 1 2 ") Ċ } Ċ Ċ tasks Ġ{ ĊĠĠĠ Ġcreate (" print Version ") Ġ{ ĊĠĠĠĠĠĠĠ Ġprintln ( project . version ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġwith Type < Shadow Jar > Ġ{ ĊĠĠĠĠĠĠĠ Ġmanifest . attributes [" Main - Class "] Ġ= Ġ" no . nav . sy fo . Bootstrap Application Kt " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġwith Type < Kotlin Compile > Ġ{ ĊĠĠĠĠĠĠĠ Ġkotlin Options . jvm Target Ġ= Ġ" 1 4 " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġwith Type < Test > Ġ{ ĊĠĠĠĠĠĠĠ Ġuse JUnit Platform Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinclude En gin es (" spe k 2 ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġtest Logging . show Standard Streams Ġ= Ġtrue ĊĠĠĠ Ġ} Ċ Ċ } Ċ