buildSrc/build.gradle.kts (39 lines of code) (raw):
import de.undercouch.gradle.tasks.download.Download
plugins {
`kotlin-dsl`
`java-gradle-plugin`
id("de.undercouch.download") version "4.1.1"
}
val mpsMajor = "2021.3"
val mpsMinor = "3"
repositories {
jcenter()
}
gradlePlugin {
plugins {
create("mpsPlugin") {
id = "org.fbme.gradle.mps"
implementationClass = "org.fbme.gradle.MpsPlugin"
}
}
}
val mps by configurations.creating
val teamcity = findProperty("ci.teamcity") == "true"
val downloadMpsZip by tasks.registering(Download::class) {
src("https://download.jetbrains.com/mps/$mpsMajor/MPS-$mpsMajor.$mpsMinor.zip")
dest("../lib")
overwrite(false)
doFirst {
file("../lib").mkdir()
}
enabled = !teamcity
}
val unpackMps by tasks.registering(Copy::class) {
dependsOn(downloadMpsZip)
from(zipTree("../lib/MPS-$mpsMajor.$mpsMinor.zip"))
into("../lib")
enabled = !teamcity
}
val build by tasks.getting {
dependsOn(unpackMps)
}