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