From 6847a3b6f9b05ac53c32b628a5875f70ca0cfa15 Mon Sep 17 00:00:00 2001 From: Philippe Perrin Date: Wed, 6 Oct 2021 11:03:37 +0200 Subject: [PATCH] Fix issues with yarn install parallelization when no cache are available --- build.gradle | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/build.gradle b/build.gradle index a61f58fe0e2..844fb69c1f3 100644 --- a/build.gradle +++ b/build.gradle @@ -655,6 +655,15 @@ gradle.projectsEvaluated { gradle -> allprojects .findResults { it -> it.tasks.findByName('dependencyCheckAggregate_prerequisites') } .each { t -> dependencyCheckAggregate.dependsOn(t) } + + // yarn_run tasks can't all run in parallel without yarn's global cache being populated + // this script add a dependency on all yarn_run tasks to the sonar-web yarn_run task + // this way we are sure that the yarn global cache is available and populated before running the + // rest of the yarn_run tasks in parrallel + def yarnRunTasks = allprojects.findResults { it -> it.tasks.findByName('yarn_run') } + def sonarWebyarnRunTask = yarnRunTasks.find { t -> t.project.name == 'sonar-web' } + yarnRunTasks.remove(sonarWebyarnRunTask) + yarnRunTasks.each { t -> t.mustRunAfter(sonarWebyarnRunTask) } } ext.osAdaptiveCommand = { commands -> -- 2.39.5