import Ġorg . jetbrains . kotlin . gradle . tasks . Kotlin Compile Ċ import Ġjava . net . URI Ċ Ċ val Ġkotlin ApiVersion Ġby Ġextra Ġ{" 1 . 3 "} Ċ val Ġkotlin Version Ġby Ġextra Ġ{" $ kotlin ApiVersion . 1 1 "} ĊĊ Ċ plugins Ġ{ ĊĠĠĠ Ġgro ovy ĊĠĠĠ Ġ` java - gradle - plugin ` ĊĠĠĠ Ġ` kotlin - dsl ` ĊĠĠĠ Ġ` maven - publish ` ĊĠĠĠ Ġkotlin (" jvm ") Ġversion Ġ" 1 . 3 . 1 1 " Ċ } Ċ Ċ val Ġversion Major Ġ= Ġ 1 Ċ val Ġversion Minor Ġ= Ġ 3 Ċ Ċ group Ġ= Ġ" de . item is . mps " ĊĊ Ċ val Ġn exus Username : ĠString ? Ġby Ġproject Ċ val Ġn exus Password : ĠString ? Ġby Ġproject Ċ Ċ val Ġkotlin Arg Parser Version Ġby Ġextra Ġ{ Ġ" 2 . 0 . 7 " Ġ} Ċ val Ġmp s Version Ġby Ġextra Ġ{ Ġ" 2 0 1 9 . 2 . 4 " Ġ} ĊĊ Ċ version Ġ= Ġif Ġ(! project . has Property (" use Snapshot ") Ġ&& ĊĠĠĠĠĠĠĠ Ġ( project . has Property (" force CI ") Ġ|| Ġproject . has Property (" team city "))) Ġ{ ĊĠĠĠ Ġde . item is . mps . gradle . Git Based Version ing . getVersion ( version Major , Ġversion Minor ) Ċ } Ġelse Ġ{ ĊĠĠĠ Ġ"$ version Major .$ version Minor - SNAPSHOT " Ċ } ĊĊ Ċ val Ġmp s Configuration Ġ= Ġconfigurations . create (" mps ") ĊĊ Ċ repositories Ġ{ ĊĠĠĠ Ġmaven Central () ĊĠĠĠ Ġmaven Ġ{ ĊĠĠĠĠĠĠĠ Ġurl Ġ= ĠURI (" https :// projects . item is . de / nexus / content / repositories / mbed dr ") ĊĠĠĠ Ġ} Ċ } ĊĊ Ċ dependencies Ġ{ ĊĠĠĠ Ġcompile ( local Gro ovy ()) ĊĠĠĠ Ġcompile ( kotlin (" stdlib ", Ġversion Ġ= Ġkotlin Version )) Ċ } ĊĊ Ċ gradle Plugin Ġ{ ĊĠĠĠ Ġplugins Ġ{ ĊĠĠĠĠĠĠĠ Ġregister (" generate - models ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" generate - models " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġimplementation Class Ġ= Ġ" de . item is . mps . gradle . generate . Generate M ps Project Plugin " ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġregister (" model check ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" model check " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġimplementation Class Ġ= Ġ" de . item is . mps . gradle . model check . Model check M ps Project Plugin " ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ tasks Ġ{ ĊĠĠĠ Ġwrapper Ġ{ ĊĠĠĠĠĠĠĠ Ġgradle Version Ġ= Ġ" 5 . 6 . 2 " ĊĠĠĠĠĠĠĠ Ġdistribution Type Ġ= ĠWrapper . Distribution Type . ALL ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġregister (" set Team City Build Number ") Ġ{ ĊĠĠĠĠĠĠĠ Ġdo Last Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprintln (" ## team city [ build Number Ġ'$ version '] ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ publishing Ġ{ ĊĠĠĠ Ġrepositories Ġ{ ĊĠĠĠĠĠĠĠ Ġmaven Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" item is " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġurl Ġ= Ġuri (" https :// projects . item is . de / nexus / content / repositories / mbed dr ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcredentials Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġusername Ġ= Ġn exus Username ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpassword Ġ= Ġn exus Password ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ tasks . with Type < Kotlin Compile > Ġ{ ĊĠĠĠ Ġkotlin Options . jvm Target Ġ= Ġ" 1 . 8 " ĊĠĠĠ Ġkotlin Options . apiVersion Ġ= Ġkotlin ApiVersion ĊĠĠĠ Ġkotlin Options . all Warnings As Errors Ġ= Ġtrue Ċ } ĊĊ