From 36bfae40b23b514b9dc0abdd354ec6080ba45683 Mon Sep 17 00:00:00 2001 From: Robert Stoll Date: Sun, 14 Jun 2020 23:10:17 +0200 Subject: [PATCH] add gradle task for fast publishing --- build.gradle | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/build.gradle b/build.gradle index a4a92ee1a..20693c425 100644 --- a/build.gradle +++ b/build.gradle @@ -34,7 +34,7 @@ buildscript { // gh-pages.gradle docProjects = (subprojects - toolProjectsFun).findAll { - !it.name.endsWith("-js") && + !it.name.endsWith("-js") && !it.name.endsWith("-android") && !it.name.contains("robstoll") && it.name != "${rootProject.name}-spec" && @@ -480,14 +480,29 @@ useJupiter( 'cc-infix-en_GB-robstoll-jvm', ) -def buildNonDeprecatedJvm = task('buildNonDeprecatedJvm', group: build, description: 'builds all JVM modules') +def buildNonDeprecatedJvm = task('buildNonDeprecatedJvm', group: 'build', description: 'builds all JVM modules') buildNonDeprecatedJvm.dependsOn(jacocoMulti.jacocoProjects.findAll { !it.projectDir.path.contains("\\deprecated\\") && !it.projectDir.path.contains("/deprecated/") }.collect { it.build }) -def buildAllWithoutJs = task('buildAllWithoutJs', group: build, description: 'builds all modules without -js modules') +def buildAllWithoutJs = task('buildAllWithoutJs', group: 'build', description: 'builds all modules without -js modules') buildAllWithoutJs.dependsOn((subprojects - getJsProjects()).collect { it.build }) +def getSubprojectTasks(String name) { + return subprojects.collect { it.tasks.findByName(name) }.findAll { it != null } +} + +task publishForScala(description: 'fast publish to maven local for scala projects') { + dependsOn getSubprojectTasks('publishToMavenLocal') +} + +gradle.taskGraph.whenReady { graph -> + if (graph.hasTask(':publishForScala')) { + ['test', 'dokka', 'signTutteliPublication'].forEach { + getSubprojectTasks(it).forEach { it.enabled = false } + } + } +} /* Release & deploy a commit