package Ġsub projects . build . core Ċ Ċ import ĠVC SC ore Ċ import Ġjet brains . build Server . configs . kotlin . v 1 0 .* Ċ import Ġjet brains . build Server . configs . kotlin . v 2 0 1 9 _ 2 . Build Type Ċ import Ġjet brains . build Server . configs . kotlin . v 2 0 1 9 _ 2 . Project Ċ import Ġjet brains . build Server . configs . kotlin . v 2 0 1 9 _ 2 . build Steps .* Ċ import Ġjet brains . build Server . configs . kotlin . v 2 0 1 9 _ 2 . triggers .* Ċ Ċ data Ġclass ĠJDK Entry ( val Ġname : ĠString , Ġval Ġenv : ĠString ) Ċ data Ġclass ĠOS Entry ( val Ġname : ĠString , Ġval Ġagent String : ĠString ) Ċ Ċ val Ġoperating Systems Ġ= ĠlistOf ( OS Entry (" macOS ", Ġ" Mac ĠOS ĠX "), ĠOS Entry (" Linux ", Ġ" Linux "), ĠOS Entry (" Windows ", Ġ" Windows ")) Ċ val Ġj dk Versions Ġ= ĠlistOf ( JDK Entry (" Java Ġ 8 "," JDK _ 1 8 "), ĠJDK Entry (" Java Ġ 1 1 ", Ġ" JDK _ 1 1 ")) Ċ Ċ object ĠProject Core Ġ: ĠProject ({ ĊĠĠĠ Ġid (" Project K tor Core ") ĊĠĠĠ Ġname Ġ= Ġ" Core " ĊĠĠĠ Ġdescription Ġ= Ġ" K tor ĠCore ĠFramework " ĊĠĠĠ Ġfor Ġ( os Ġin Ġoperating Systems ) Ġ{ ĊĠĠĠĠĠĠĠ Ġfor Ġ( jdk Ġin Ġj dk Versions ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuild Type ( Build Template ( os , Ġj dk )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ }) ĊĊĊ Ċ class ĠBuild Template ( val Ġos Entry : ĠOS Entry , Ġval Ġj dk Entry : ĠJDK Entry ): ĠBuild Type ({ ĊĠĠĠ Ġid (" K tor Matrix _${ os Entry . name }${ jdk Entry . name }". to Ext Id ()) ĊĠĠĠ Ġname Ġ= Ġ" Build Ġwith Ġ${ jdk Entry . name } Ġon Ġ${ os Entry . name }" ĊĊĠĠĠ Ġv cs Ġ{ ĊĠĠĠĠĠĠĠ Ġroot ( VC SC ore ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġtriggers Ġ{ ĊĠĠĠĠĠĠĠ Ġv cs Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġquiet Period Mode Ġ= ĠV cs Trigger . Quiet Period Mode . USE _ DEFAULT ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbranch Filter Ġ= Ġ"" ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ Ġsteps Ġ{ ĊĠĠĠĠĠĠĠ Ġgradle Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtasks Ġ= Ġ" clean Ġj vm Test Classes " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuild File Ġ= Ġ"" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgradle Wrapper Path Ġ= Ġ"" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġj dk Home Ġ= Ġ"% env .${ jdk Entry . env } %" ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ Ġrequirements Ġ{ ĊĠĠĠĠĠĠĠ Ġno LessThan (" team city . agent . hardware . memory Size Mb ", Ġ" 7 0 0 0 ") ĊĠĠĠĠĠĠĠ Ġcontains (" team city . agent . jvm . os . name ", Ġos Entry . agent String ) ĊĠĠĠ Ġ} Ċ }) ĊĊ