anchor.diff:  [subs="attributes"]
   .build.gradle.kts
   ----
  -    extra["downloadsDir"] = project.findProperty("downloads.dir") ?: "${rootDir}/downloads"
  -    extra["java7Home"] = project.findProperty("java7.home") ?: "/opt/jdk1.7.0_80"
  -    extra["java8Home"] = project.findProperty("java8.home") ?: "/opt/jdk1.8.0_202"
  -
  +    val downloadsDir by extra((project.findProperty("downloads.dir") ?: "${rootDir}/downloads") as String)
  +    val java7Home by extra((project.findProperty("java7.home") ?: "/opt/jdk1.7.0_80") as String)
  +    val java8Home by extra((project.findProperty("java8.home") ?: "/opt/jdk1.8.0_202") as String)
   
       teamcity {
           version = "{example-api-version}"
  
positive.code: [subs="attributes"]
  .build.gradle.kts
  ----
      extra["teamcityVersion"] = findProperty("teamcity.version") ?: "{example-api-version}"
  
      teamcity {
          version = extra["teamcityVersion"] as String
  
          agent {
              descriptor {
  
negative.code:             baseHomeDir = "teamcity/servers"
              baseDataDir = "${rootDir}/data"
  
              create("teamcity9") {
                  version = "9.1.7"
                  javaHome = java7Home
  
                  // Add to the default server options
                  serverOptions("-Dproperty=value")
                  serverOptions("-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5500")
              }
  
              register("teamcity2017.2") {
                  version = "2017.2.4"
                  javaHome = java8Home
  
                  // Replace the default server options
                  setServerOptions("-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5500")
              }
  
              register("teamcity2020.2") {
                  version = "2020.2.4"
              }
          }
      }
  ----
  
  