Bootstrap
In a buildscript
build.gradle
plugins {
id 'org.ysb33r.lifecycles.base' version '1.0.1' (1)
id 'org.ysb33r.lifecycles.docs' version '1.0.1' (2)
id 'org.ysb33r.lifecycles.dev' version '1.0.1' (3)
id 'org.ysb33r.lifecycles.release' version '1.0.1' (4)
id 'org.ysb33r.lifecycles.all' version '1.0.1' (5)
}
| 1 | Base plugin that only adds a formatAll formatting lifecycle task. |
| 2 | Adds documentation lifecycle tasks. |
| 3 | Adds additional development lifecycle tasks above and beyond what Gradle already has. |
| 4 | Adds lifecycle tasks for releasing binary artifacts and deploying applications. |
| 5 | Adds all the lifecycle tasks. |
For development
gradle/libs.versions.toml
[versions]
lifecycles = "1.0.1"
[libraries]
lifecycles = { modules = "org.ysb33r.lifecycle-tasks.all:org.ysb33r.lifecycle-tasks.all.gradle.plugin", version.ref = "lifecycles"}
build.gradle
dependencies {
implementation(libs.lifecycles)
}
MyPlugin.groovy
import org.ysb33r.gradle.lifecycles.LifecyclePlugin
@CompileStatic
class MyPlugin implements Plugin<Project> {
void apply(Project project) {
project.pluginManager.apply(LifecyclePlugin) (1)
}
}
| 1 | You can choose another of the lifecycle plugins if you do not need all the lifecycles. |
Names of lifecycles and groups
You have access to all of them on the LifecycleBaseTasksPlugin.
Tasks
public static final String ASSEMBLE_TASK = LifecycleBasePlugin.ASSEMBLE_TASK_NAME
public static final String ASSEMBLE_DOCS_TASK = 'assembleDocumentation'
public static final String BUILD_TASK = LifecycleBasePlugin.BUILD_TASK_NAME
public static final String CHECK_TASK = LifecycleBasePlugin.CHECK_TASK_NAME
public static final String COVERAGE_CHECK_TASK = 'coverageCheck'
public static final String DEPLOY_APPLICATION_TASK = 'deployApplication'
public static final String FORMAT_ALL_TASK = 'formatAll'
public static final String PUBLISH_DOCS_TASK = 'publishDocumentation'
public static final String PUBLISH_LIBRARY_TASK = 'publishLibrary'
public static final String SECURITY_CHECK_TASK = 'securityCheck'
Groups
public static final String DOCS_GROUP = 'documentation'
public static final String FORMAT_GROUP = 'formatting'
public static final String RELEASE_GROUP = 'release'
public static final String VERIFICATION_GROUP = LifecycleBasePlugin.VERIFICATION_GROUP