diff --git a/buildSrc/src/main/kotlin/toolbox-convention.gradle.kts b/buildSrc/src/main/kotlin/toolbox-convention.gradle.kts index 1f1aa422..e3fa4000 100644 --- a/buildSrc/src/main/kotlin/toolbox-convention.gradle.kts +++ b/buildSrc/src/main/kotlin/toolbox-convention.gradle.kts @@ -17,6 +17,14 @@ tasks.named("jar") { from(generateExtensionJson.flatMap { it.outputFile }) } +tasks.named("processResources") { + val pluginVersion = project.version.toString() + inputs.property("pluginVersion", pluginVersion) + filesMatching("META-INF/plugin.xml") { + expand("version" to pluginVersion) + } +} + val filteredDependencies = configurations.named("runtimeClasspath").map { filterToolboxProvidedDependencies(it.files) } @@ -70,3 +78,15 @@ val publishPlugin by tasks.registering(PublishToolboxPluginTask::class) { extensionId.set(project.group.toString()) pluginFile.set(packagePlugin.flatMap { it.archiveFile }) } + +val packageIdeaPlugin by tasks.registering(Zip::class) { + dependsOn(tasks.named("jar"), generatedDependenciesJson) + archiveBaseName.set("coder-toolbox-idea") + val pluginDir = project.group.toString() + from(tasks.named("jar")) { + into("$pluginDir/lib") + } + from(filteredDependencies) { + into("$pluginDir/lib") + } +} \ No newline at end of file diff --git a/src/main/resources/META-INF/plugin.xml b/src/main/resources/META-INF/plugin.xml new file mode 100644 index 00000000..b1c55b83 --- /dev/null +++ b/src/main/resources/META-INF/plugin.xml @@ -0,0 +1,12 @@ + + com.coder.toolbox + Coder + ${version} + coder + + Connects your JetBrains IDE to Coder workspaces + + + + + \ No newline at end of file