diff --git a/.space.kts b/.space.kts new file mode 100644 index 000000000..a52bca5e0 --- /dev/null +++ b/.space.kts @@ -0,0 +1,27 @@ +/* + * Copyright 2003-2023 The IdeaVim authors + * + * 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. + */ + +/** + * JetBrains Space Automation + * This Kotlin script file lets you automate build activities + * For more info, see https://www.jetbrains.com/help/space/automation.html + */ + +job("Deploy vim-engine library to intellij-dependencies") { + parameters { + text("spaceUsername", value = "{{ project:spaceUsername }}") + secret("spacePassword", value = "{{ project:spacePassword }}") + text("uploadUrl", value = "{{ project:uploadUrl }}") + } + container(displayName = "Publish Artifact", image = "amazoncorretto:17-alpine") { + kotlinScript { api -> + api.parameters["engineVersion"] = "0.0." + api.executionNumber() + api.gradlew(":vim-engine:publish") + } + } +} \ No newline at end of file diff --git a/vim-engine/build.gradle.kts b/vim-engine/build.gradle.kts index bcc175c72..61b757b93 100644 --- a/vim-engine/build.gradle.kts +++ b/vim-engine/build.gradle.kts @@ -11,6 +11,7 @@ plugins { kotlin("jvm") // id("org.jlleitschuh.gradle.ktlint") id("com.google.devtools.ksp") version "1.8.21-1.0.11" + `maven-publish` } // group 'org.jetbrains.ideavim' @@ -60,3 +61,28 @@ tasks { kotlin { explicitApi() } + +val spaceUsername: String by project +val spacePassword: String by project +val engineVersion: String by project +val uploadUrl: String by project + +publishing { + publications { + create<MavenPublication>("maven") { + groupId = "com.maddyhome.idea.vim" + artifactId = "vim-engine" + version = engineVersion + from(components["java"]) + } + } + repositories { + maven { + url = uri(uploadUrl) + credentials { + username = spaceUsername + password = spacePassword + } + } + } +} \ No newline at end of file diff --git a/vim-engine/gradle.properties b/vim-engine/gradle.properties index 0173adf18..ab279c2c3 100644 --- a/vim-engine/gradle.properties +++ b/vim-engine/gradle.properties @@ -8,3 +8,8 @@ # Disable incremental annotation processing ksp.incremental=false + +spaceUsername= +spacePassword= +engineVersion= +uploadUrl=