A Gradle plugin for sharing versioning and configuration across independent projects.
Report Bug
·
Request Feature
·
Changelog
Table of Contents
This Gradle plugin injects some basic configuration (including dependencies and plugins) into all of your (unrelated to each other) projects from a shared, single point of declaration.
It was invented to help us get new project initialized faster and keep track of versions at a single place for all of our projects. It does also include some GitHub action blueprints.
This library uses Semantic Versioning 2.0 and generates its Changelog from Conventional Commit messages.
We choose to support the lowest actively supported Java version at the time of writing, that is, Java 11 (this may be subject to change in future releases).
The config given in this repository already includes kotlin
and the org.jetbrains.kotlin:kotlin-bom
artifact in the
latest version; so a minimal build.gradle.kts
would look like:
// Complete [sic!] working example of build.gradle.kts
repositories {
mavenCentral()
}
plugins {
id("io.mailguru.gradle-config") version "1.0.2"
}
You may, of course, override the configuration of the injected dependencies and plugins on your own, e.g.:
// Complete [sic!] working example of build.gradle.kts
repositories {
mavenCentral()
}
plugins {
id("io.mailguru.gradle-config") version "1.0.2"
}
detekt {
// Adds debug output during task execution. `false` by default.
debug = true
}
The plugin will also add some output of the applied configuration to your Gradle tasks.
Contributions are welcome; please stick to the
GitHub Fork & Pull Request Workflow.
We will then review your changes and accept your PR if applicable.
Distributed under the GNU General Public License v3.0. See LICENSE.md for more information.
Project Link: https://github.com/mlgr-io/gradle-config