1
0
mirror of https://github.com/chylex/IntelliJ-IdeaVim.git synced 2025-02-28 02:45:59 +01:00
IntelliJ-IdeaVim/scripts/build.gradle.kts

123 lines
4.0 KiB
Plaintext
Raw Normal View History

2022-12-29 08:26:45 +01:00
/*
2023-01-10 09:09:25 +01:00
* Copyright 2003-2023 The IdeaVim authors
2022-12-29 08:26:45 +01:00
*
* Use of this source code is governed by an MIT-style
* license that can be found in the LICENSE.txt file or at
* https://opensource.org/licenses/MIT.
*/
plugins {
2023-07-27 08:50:55 +02:00
java
kotlin("jvm")
application
2022-12-29 08:26:45 +01:00
}
// group 'org.jetbrains.ideavim'
// version 'SNAPSHOT'
repositories {
2023-07-27 08:50:55 +02:00
mavenCentral()
2022-12-29 08:26:45 +01:00
}
dependencies {
compileOnly("org.jetbrains.kotlin:kotlin-stdlib:1.9.23")
2022-12-29 08:26:45 +01:00
implementation("io.ktor:ktor-client-core:2.3.10")
implementation("io.ktor:ktor-client-cio:2.3.10")
implementation("io.ktor:ktor-client-content-negotiation:2.3.10")
implementation("io.ktor:ktor-serialization-kotlinx-json:2.3.10")
implementation("io.ktor:ktor-client-auth:2.3.10")
2023-07-27 08:50:55 +02:00
implementation("org.eclipse.jgit:org.eclipse.jgit:6.6.0.202305301015-r")
2023-09-01 10:31:05 +02:00
// This is needed for jgit to connect to ssh
implementation("org.eclipse.jgit:org.eclipse.jgit.ssh.apache:6.9.0.202403050737-r")
2023-07-27 08:50:55 +02:00
implementation("com.vdurmont:semver4j:3.1.0")
2022-12-29 08:26:45 +01:00
}
2023-07-27 08:05:38 +02:00
val releaseType: String? by project
2022-12-29 08:26:45 +01:00
tasks {
2023-07-27 08:50:55 +02:00
compileKotlin {
kotlinOptions {
freeCompilerArgs = listOf("-Xjvm-default=all-compatibility")
2022-12-29 08:26:45 +01:00
}
2023-07-27 08:50:55 +02:00
}
2022-12-29 08:26:45 +01:00
}
tasks.register("generateIdeaVimConfigurations", JavaExec::class) {
2023-07-27 08:50:55 +02:00
group = "verification"
description = "This job tracks if there are any new plugins in marketplace we don't know about"
mainClass.set("scripts.MainKt")
classpath = sourceSets["main"].runtimeClasspath
2022-12-29 08:26:45 +01:00
}
tasks.register("checkNewPluginDependencies", JavaExec::class) {
2023-07-27 08:50:55 +02:00
group = "verification"
description = "This job tracks if there are any new plugins in marketplace we don't know about"
mainClass.set("scripts.CheckNewPluginDependenciesKt")
classpath = sourceSets["main"].runtimeClasspath
2022-12-29 08:26:45 +01:00
}
tasks.register("calculateNewVersion", JavaExec::class) {
2023-07-27 10:17:41 +02:00
group = "release"
2023-07-27 10:03:57 +02:00
mainClass.set("scripts.release.CalculateNewVersionKt")
classpath = sourceSets["main"].runtimeClasspath
2023-07-27 08:35:09 +02:00
args = listOf("${rootProject.rootDir}", releaseType ?: "")
}
2023-07-26 16:02:31 +02:00
tasks.register("changelogUpdateUnreleased", JavaExec::class) {
2023-07-27 10:17:41 +02:00
group = "release"
2023-07-27 10:03:57 +02:00
mainClass.set("scripts.release.ChangelogUpdateUnreleasedKt")
2023-07-26 16:02:31 +02:00
classpath = sourceSets["main"].runtimeClasspath
2023-07-27 08:35:09 +02:00
args = listOf(project.version.toString(), rootProject.rootDir.toString(), releaseType ?: "")
}
tasks.register("commitChanges", JavaExec::class) {
2023-07-27 10:17:41 +02:00
group = "release"
2023-07-27 08:35:09 +02:00
mainClass.set("scripts.release.CommitChangesKt")
classpath = sourceSets["main"].runtimeClasspath
args = listOf(project.version.toString(), rootProject.rootDir.toString(), releaseType ?: "")
2023-07-26 16:02:31 +02:00
}
2023-07-27 08:50:55 +02:00
tasks.register("addReleaseTag", JavaExec::class) {
2023-07-27 10:17:41 +02:00
group = "release"
2023-07-27 08:50:55 +02:00
mainClass.set("scripts.release.AddReleaseTagKt")
classpath = sourceSets["main"].runtimeClasspath
args = listOf(project.version.toString(), rootProject.rootDir.toString(), releaseType ?: "")
}
2023-07-27 10:00:11 +02:00
tasks.register("selectBranch", JavaExec::class) {
2023-07-27 10:17:41 +02:00
group = "release"
2023-07-27 10:00:11 +02:00
mainClass.set("scripts.release.SelectBranchKt")
classpath = sourceSets["main"].runtimeClasspath
args = listOf(project.version.toString(), rootProject.rootDir.toString(), releaseType ?: "")
}
tasks.register("eapReleaseActions", JavaExec::class) {
group = "release"
mainClass.set("scripts.releaseEap.EapReleaseActionsKt")
classpath = sourceSets["main"].runtimeClasspath
args = listOf(project.version.toString(), rootProject.rootDir.toString(), releaseType ?: "")
}
tasks.register("calculateNewEapVersion", JavaExec::class) {
group = "release"
mainClass.set("scripts.release.CalculateNewEapVersionKt")
classpath = sourceSets["main"].runtimeClasspath
args = listOf("${rootProject.rootDir}")
}
tasks.register("calculateNewDevVersion", JavaExec::class) {
group = "release"
mainClass.set("scripts.release.CalculateNewDevVersionKt")
classpath = sourceSets["main"].runtimeClasspath
args = listOf("${rootProject.rootDir}")
}
tasks.register("setTeamCityBuildNumber", JavaExec::class) {
group = "release"
mainClass.set("scripts.release.SetTeamCityBuildNumberKt")
classpath = sourceSets["main"].runtimeClasspath
args = listOf(project.version.toString(), rootProject.rootDir.toString(), releaseType ?: "")
}