import Ġorg . jetbrains . kotlin . gradle . tasks . Kotlin Compile Ċ Ċ plugins Ġ{ ĊĠĠĠ Ġid (" org . aj ober star . re ck on ") Ġversion Ġ" 0 . 1 3 . 0 " ĊĠĠĠ Ġid (" org . springframework . boot ") Ġversion Ġ" 2 . 3 . 3 . RELEASE " ĊĠĠĠ Ġid (" io . spring . dependency - management ") Ġversion Ġ" 1 . 0 . 1 0 . RELEASE " ĊĠĠĠ Ġid (" com . google . cloud . tools . j ib ") Ġversion Ġ" 2 . 5 . 0 " ĊĠĠĠ Ġid (" com . github . john ren gel man . shadow ") Ġversion Ġ" 5 . 2 . 0 " ĊĠĠĠ Ġkotlin (" jvm ") Ġversion Ġ" 1 . 3 . 7 2 " ĊĠĠĠ Ġkotlin (" plugin . spring ") Ġversion Ġ" 1 . 3 . 7 2 " ĊĠĠĠ Ġkotlin (" k apt ") Ġversion Ġ" 1 . 3 . 7 1 " Ċ } Ċ Ċ group Ġ= Ġ" com . dm w group . gcp . spanner " Ċ version Ġ= Ġ" 0 . 0 . 1 - SNAPSHOT " Ċ java . source Compatibility Ġ= ĠJava Version . VERSION _ 1 1 Ċ Ċ configurations Ġ{ ĊĠĠĠ Ġcompile Only Ġ{ ĊĠĠĠĠĠĠĠ Ġextends From ( configurations . annotation Processor . get ()) ĊĠĠĠ Ġ} Ċ } Ċ Ċ repositories Ġ{ ĊĠĠĠ Ġmaven Central () Ċ } Ċ Ċ extra [" spring Cloud Version "] Ġ= Ġ" H ox ton . SR 8 " Ċ Ċ dependencies Ġ{ ĊĠĠĠ Ġimplementation ( platform (" org . test containers : test containers - bom : 1 . 1 5 . 1 ")) ĊĠĠĠ Ġimplementation (" org . springframework . boot : spring - boot - starter - act uator ") ĊĠĠĠ Ġimplementation (" org . springframework . boot : spring - boot - starter - web ") ĊĠĠĠ Ġimplementation (" com . fasterxml . jackson . module : jackson - module - kotlin ") ĊĠĠĠ Ġimplementation (" org . jetbrains . kotlin : kotlin - reflect ") ĊĠĠĠ Ġimplementation (" org . jetbrains . kotlin : kotlin - stdlib - jdk 8 ") ĊĠĠĠ Ġimplementation (" org . springframework . cloud : spring - cloud - gcp - starter ") ĊĠĠĠ Ġimplementation (" org . springframework . cloud : spring - cloud - gcp - starter - logging ") ĊĠĠĠ Ġdevelopment Only (" org . springframework . boot : spring - boot - devtools ") ĊĠĠĠ Ġimplementation (" org . springframework . cloud : spring - cloud - gcp - starter - data - spanner ") ĊĠĠĠ Ġimplementation (" com . google . code . gson : gson : 2 . 8 . 6 ") ĊĠĠĠ Ġimplementation (" com . google . api . grpc : proto - google - cloud - spanner - v 1 : 1 . 6 1 . 0 ") ĊĠĠĠ Ġimplementation (" com . google . cloud : google - cloud - spanner : 1 . 6 1 . 0 ") ĊĠĠĠ Ġimplementation (" com . google . cloud : google - cloud - monitoring : 2 . 0 . 1 ") ĊĠĠĠ Ġimplementation (" com . google . auth : google - auth - library - oauth 2 - http : 0 . 2 1 . 1 ") ĊĠĠĠ Ġimplementation (" com . k ong hq : un ire st - java : 3 . 1 0 . 0 0 ") ĊĠĠĠ Ġimplementation (" io . arrow - kt : arrow - core : 0 . 1 1 . 0 ") ĊĠĠĠ Ġimplementation (" com . github . f 4 b 6 a 3 : uuid - creator : 2 . 7 . 8 ") ĊĠĠĠ Ġimplementation (" org . hibernate : hibernate - validator : 6 . 1 . 5 . Final ") ĊĠĠĠ Ġk apt (" org . springframework . boot : spring - boot - configuration - processor ") ĊĠĠĠ Ġtest Implementation (" org . springframework . boot : spring - boot - starter - test ") Ġ{ ĊĠĠĠĠĠĠĠ Ġexclude ( group Ġ= Ġ" org . junit . vint age ", Ġmodule Ġ= Ġ" junit - vint age - engine ") ĊĠĠĠ Ġ} ĊĠĠĠ Ġtest Implementation (" org . test containers : junit - jupiter : 1 . 1 5 . 1 ") ĊĠĠĠ Ġtest Implementation (" org . test containers : g cloud : 1 . 1 5 . 1 ") Ċ } Ċ Ċ dependency Management Ġ{ ĊĠĠĠ Ġimports Ġ{ ĊĠĠĠĠĠĠĠ Ġmaven B om (" org . springframework . cloud : spring - cloud - dependencies :${ property (" spring Cloud Version ") }") ĊĠĠĠ Ġ} Ċ } Ċ Ċ re ck on Ġ{ ĊĠĠĠ Ġscope From Prop () ĊĠĠĠ Ġstage From Prop (" final ", Ġ" hot fix ") Ċ } Ċ Ċ // ĠMake Ġsure Ġthe Ġproject Ġis Ġin Ġa Ġfit Ġstate Ġbefore Ġtagging Ċ sub projects . forEach Ġ{ ĊĠĠĠ Ġtasks [" re ck on Tag Create "]. depends On ("${ it . name }: check ") Ċ } Ċ Ċ tasks . with Type < Test > Ġ{ ĊĠĠĠ Ġuse JUnit Platform () Ċ } Ċ Ċ tasks . with Type < Kotlin Compile > Ġ{ ĊĠĠĠ Ġkotlin Options Ġ{ ĊĠĠĠĠĠĠĠ Ġfree Compiler Args Ġ= ĠlistOf ("- X js r 3 0 5 = strict ") ĊĠĠĠĠĠĠĠ Ġj vm Target Ġ= Ġ" 1 1 " ĊĠĠĠ Ġ} Ċ } Ċ Ċ val Ġcompile Kotlin : ĠKotlin Compile Ġby Ġtasks Ċ compile Kotlin . kotlin Options Ġ{ ĊĠĠĠ Ġlanguage Version Ġ= Ġ" 1 . 4 " Ċ } Ċ Ċ // ĠConfigure ĠJ ib Ġto Ġgenerate Ġdocker Ġimages Ċ j ib Ġ{ ĊĠĠĠ Ġfrom Ġ{ ĊĠĠĠĠĠĠĠ Ġimage Ġ= Ġ" gcr . io / dist ro less / java : 1 1 " ĊĠĠĠ Ġ} ĊĠĠĠ Ġto Ġ{ ĊĠĠĠĠĠĠĠ Ġimage Ġ= Ġ" docker . pkg . github . com / dm w group / spanner - aut oscaler / spanner - aut oscaler " ĊĠĠĠĠĠĠĠ Ġtags Ġ= Ġget Additional Docker Tags () ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun Ġget Additional Docker Tags (): ĠSet < String > Ġ{ ĊĠĠĠ Ġval Ġtags Ġ= Ġmutable ListOf < String >() ĊĠĠĠ Ġvar Ġtag Ġ= Ġ"" ĊĠĠĠ Ġproject . version . toString (). split (". "). forEach Ġ{ ĊĠĠĠĠĠĠĠ Ġtags . add ("$ tag $ it ") ĊĠĠĠĠĠĠĠ Ġtag Ġ+= Ġ"$ it ." ĊĠĠĠ Ġ} ĊĠĠĠ Ġprintln (" In ferred ĠDocker Ġtags : Ġ$ tags ") ĊĠĠĠ Ġreturn Ġtags . toSet () Ċ } Ċ