Currently, the plugin publishing configuration does not benefit from Forma concept. Ideally instead of following the code:
ext {
set("group", "tools.forma")
set("version", "0.1.3")
set("tags", listOf("kotlin", "android", "structure", "target", "rules", "project"))
set("website", "https://forma.tools/")
set("vcsUrl", "https://github.com/formatools/forma.git")
set("displayName", "Forma - Meta Build System with Gradle and Android support")
set("description", "Best way to structure your Gradle Project")
}
gradlePlugin {
website.set(rootProject.ext["website"] as String)
vcsUrl.set(rootProject.ext["vcsUrl"] as String)
plugins {
create(name) {
id = "$group.$name"
displayName = rootProject.ext["displayName"] as String
description = rootProject.ext["description"] as String
implementationClass = "$id.plugin.FormaPlugin"
@Suppress("UNCHECKED_CAST")
tags.set(rootProject.ext["tags"] as List<String>)
}
}
}
We want to implement smth like
// root build.gradle
formaPluginConfiguration {
group = "tools.forma"
website = "..."
...
}
```kotlin
// plugin build.gradle
gradlePlugin(
name = "android"
description = " Bla bla"
implementationClass = "plugins.FormaPlugin",
extraTags = listOf(...)
...
)
Currently, the plugin publishing configuration does not benefit from Forma concept. Ideally instead of following the code:
ext { set("group", "tools.forma") set("version", "0.1.3") set("tags", listOf("kotlin", "android", "structure", "target", "rules", "project")) set("website", "https://forma.tools/") set("vcsUrl", "https://github.com/formatools/forma.git") set("displayName", "Forma - Meta Build System with Gradle and Android support") set("description", "Best way to structure your Gradle Project") }gradlePlugin { website.set(rootProject.ext["website"] as String) vcsUrl.set(rootProject.ext["vcsUrl"] as String) plugins { create(name) { id = "$group.$name" displayName = rootProject.ext["displayName"] as String description = rootProject.ext["description"] as String implementationClass = "$id.plugin.FormaPlugin" @Suppress("UNCHECKED_CAST") tags.set(rootProject.ext["tags"] as List<String>) } } }We want to implement smth like