Introduced platformPlugins property in gradle.properties for configuring dependencies to bundled/external plugins

This commit is contained in:
Jakub Chrzanowski 2020-10-12 17:56:08 +02:00 committed by GitHub
parent d5e288773e
commit 7aa1a48766
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 22 additions and 16 deletions

View File

@ -53,7 +53,7 @@ jobs:
uses: actions/cache@v2 uses: actions/cache@v2
with: with:
path: ~/.gradle/caches path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-caches-${{ hashFiles('**/*.gradle', '**/*.gradle.kts') }} key: ${{ runner.os }}-gradle-caches-${{ hashFiles('**/*.gradle', '**/*.gradle.kts', 'gradle.properties') }}
# Cache Gradle Wrapper # Cache Gradle Wrapper
- name: Setup Gradle Wrapper Cache - name: Setup Gradle Wrapper Cache
@ -98,7 +98,7 @@ jobs:
uses: actions/cache@v2 uses: actions/cache@v2
with: with:
path: ~/.gradle/caches path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-caches-${{ hashFiles('**/*.gradle', '**/*.gradle.kts') }} key: ${{ runner.os }}-gradle-caches-${{ hashFiles('**/*.gradle', '**/*.gradle.kts', 'gradle.properties') }}
# Cache Gradle Wrapper # Cache Gradle Wrapper
- name: Setup Gradle Wrapper Cache - name: Setup Gradle Wrapper Cache

View File

@ -3,6 +3,9 @@
# IntelliJ Platform Plugin Template Changelog # IntelliJ Platform Plugin Template Changelog
## [Unreleased] ## [Unreleased]
### Added
- Introduced `platformPlugins` property in `gradle.properties` for configuring dependencies to bundled/external plugins
### Changed ### Changed
- Disable "Release Draft" job for pull requests in the "Build" GitHub Actions Workflow - Disable "Release Draft" job for pull requests in the "Build" GitHub Actions Workflow
- Dependencies - upgrade `org.jetbrains.intellij` to 0.5.0 - Dependencies - upgrade `org.jetbrains.intellij` to 0.5.0

View File

@ -71,16 +71,17 @@ The most significant parts of the current configuration are:
The project-specific configuration file [gradle.properties][file:gradle.properties] contains: The project-specific configuration file [gradle.properties][file:gradle.properties] contains:
| Property name | Description | | Property name | Description |
| ------------------------- | ------------------------------------------------------------------------------------------ | | ------------------------- | --------------------------------------------------------------------------------------------------------- |
| `pluginGroup` | Package name - after *using* the template, this will be set to `com.github.username.repo`. | | `pluginGroup` | Package name - after *using* the template, this will be set to `com.github.username.repo`. |
| `pluginName` | Plugin name displayed in the Marketplace and the Plugins Repository. | | `pluginName` | Plugin name displayed in the Marketplace and the Plugins Repository. |
| `pluginVersion` | The current version of the plugin. | | `pluginVersion` | The current version of the plugin. |
| `pluginSinceBuild` | The `since-build` attribute of the <idea-version> tag. | | `pluginSinceBuild` | The `since-build` attribute of the <idea-version> tag. |
| `pluginUntilBuild` | The `until-build` attribute of the <idea-version> tag. | | `pluginUntilBuild` | The `until-build` attribute of the <idea-version> tag. |
| `platformType` | The type of IDE distribution. | | `platformType` | The type of IDE distribution. |
| `platformVersion` | The version of the IntelliJ Platform IDE that will be used to build the plugin. | | `platformVersion` | The version of the IntelliJ Platform IDE that will be used to build the plugin. |
| `platformDownloadSources` | IDE sources downloaded while initializing the Gradle build. | | `platformDownloadSources` | IDE sources downloaded while initializing the Gradle build. |
| `platformPlugins` | Comma-separated list of dependencies to the bundled IDE plugins and plugins from the Plugin Repositories. |
The properties listed define the plugin itself or configure the [gradle-intellij-plugin][gh:gradle-intellij-plugin] check its documentation for more details. The properties listed define the plugin itself or configure the [gradle-intellij-plugin][gh:gradle-intellij-plugin] check its documentation for more details.

View File

@ -29,6 +29,7 @@ val pluginUntilBuild: String by project
val platformType: String by project val platformType: String by project
val platformVersion: String by project val platformVersion: String by project
val platformPlugins: String by project
val platformDownloadSources: String by project val platformDownloadSources: String by project
group = pluginGroup group = pluginGroup
@ -52,10 +53,8 @@ intellij {
downloadSources = platformDownloadSources.toBoolean() downloadSources = platformDownloadSources.toBoolean()
updateSinceUntilBuild = true updateSinceUntilBuild = true
// Plugin Dependencies: // Plugin Dependencies. Uses `platformPlugins` property from the gradle.properties file.
// https://www.jetbrains.org/intellij/sdk/docs/basics/plugin_structure/plugin_dependencies.html setPlugins(*platformPlugins.split(',').map(String::trim).filter(String::isNotEmpty).toTypedArray())
//
// setPlugins("java")
} }
// Configure detekt plugin. // Configure detekt plugin.

View File

@ -10,6 +10,9 @@ pluginUntilBuild = 202.*
platformType = IC platformType = IC
platformVersion = 2019.3 platformVersion = 2019.3
platformDownloadSources = true platformDownloadSources = true
# Plugin Dependencies -> https://www.jetbrains.org/intellij/sdk/docs/basics/plugin_structure/plugin_dependencies.html
# Example: platformPlugins = com.intellij.java,com.jetbrains.php:203.4449.22
platformPlugins =
# Opt-out flag for bundling Kotlin standard library. # Opt-out flag for bundling Kotlin standard library.
# See https://kotlinlang.org/docs/reference/using-gradle.html#dependency-on-the-standard-library for details. # See https://kotlinlang.org/docs/reference/using-gradle.html#dependency-on-the-standard-library for details.