@@ -30,6 +30,7 @@ import org.gradle.api.Project
30
30
import org.gradle.api.publish.maven.tasks.PublishToMavenRepository
31
31
import org.gradle.api.tasks.Copy
32
32
import org.gradle.api.tasks.bundling.Zip
33
+ import org.gradle.kotlin.dsl.apply
33
34
import org.gradle.kotlin.dsl.named
34
35
import org.gradle.kotlin.dsl.register
35
36
@@ -60,6 +61,9 @@ import org.gradle.kotlin.dsl.register
60
61
* - [PUBLISH_RELEASING_LIBS_TO_LOCAL_TASK][registerPublishReleasingLibrariesToMavenLocalTask]
61
62
* - [SEMVER_CHECK_TASK][registerSemverCheckForReleaseTask]
62
63
* - [PUBLISH_ALL_TO_BUILD_TASK][registerPublishAllToBuildDir]
64
+ *
65
+ * Additionally, this plugin registers the [PostReleasePlugin] via [registerPostReleasePlugin] for
66
+ * each releasing library.
63
67
*/
64
68
abstract class PublishingPlugin : Plugin <Project > {
65
69
override fun apply (project : Project ) {
@@ -91,6 +95,7 @@ abstract class PublishingPlugin : Plugin<Project> {
91
95
registerPublishReleasingLibrariesToMavenLocalTask(project, releasingProjects)
92
96
registerSemverCheckForReleaseTask(project, releasingProjects)
93
97
registerPublishAllToBuildDir(project, allFirebaseLibraries)
98
+ registerPostReleasePlugin(releasingProjects)
94
99
95
100
val buildMavenZip =
96
101
project.tasks.register<Zip >(BUILD_MAVEN_ZIP_TASK ) {
@@ -444,6 +449,13 @@ abstract class PublishingPlugin : Plugin<Project> {
444
449
}
445
450
}
446
451
452
+ /* * Registers the [PostReleasePlugin] to each releaing project. */
453
+ private fun registerPostReleasePlugin (releasingProjects : List <Project >) {
454
+ for (releasingProject in releasingProjects) {
455
+ releasingProject.apply<PostReleasePlugin >()
456
+ }
457
+ }
458
+
447
459
companion object {
448
460
const val RELEASE_CONFIG_FILE = " release.json"
449
461
const val RELEASE_REPORT_MD_FILE = " release_report.md"
@@ -476,7 +488,6 @@ abstract class PublishingPlugin : Plugin<Project> {
476
488
*
477
489
* @property releasingLibraries A list of libraries that should be released
478
490
* @property name The name of the release (such as `m123`)
479
- *
480
491
* @see computeReleaseMetadata
481
492
*/
482
493
data class ReleaseMetadata (
0 commit comments