This is an automated email from the ASF dual-hosted git repository. epugh pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/solr.git
The following commit(s) were added to refs/heads/main by this push: new 388101fc841 Use separate nodeProjectDir for each subproject (#2680) 388101fc841 is described below commit 388101fc84140c0bdc50706637bcc5df11908ca6 Author: Tyler Bertrand <121591679+tylerbertr...@users.noreply.github.com> AuthorDate: Wed Jan 8 07:28:43 2025 -0600 Use separate nodeProjectDir for each subproject (#2680) Using a shared nodeProjectDir caused multiple nodeSetup tasks to step on each others' toes. The com.github.node-gradle.node plugin doesn't fully support reusing nodeProjectDir, and each nodeSetup task will clean up the existing nodeProjectDir before unpacking the node installation into it. This can result in tasks seeing issues when trying to use npm/node while a nodeSetup task from another project is cleaning it up. use nodeProjectDir instead of rootNodeDir --------- Co-authored-by: Eric Pugh <ep...@opensourceconnections.com> --- gradle/node.gradle | 7 +++---- solr/CHANGES.txt | 2 +- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/gradle/node.gradle b/gradle/node.gradle index d585ab5f871..fe128ea1f4a 100644 --- a/gradle/node.gradle +++ b/gradle/node.gradle @@ -35,8 +35,7 @@ configure([project(":solr:packaging"), project(":solr:solr-ref-guide"), project( } project.ext { - rootNodeDir = "$rootDir/.gradle/node" - nodeProjectDir = file("$rootNodeDir/$project.name") + nodeProjectDir = layout.projectDirectory.dir(".gradle/node") } node { @@ -49,10 +48,10 @@ configure([project(":solr:packaging"), project(":solr:solr-ref-guide"), project( } // The directory where Node.js is unpacked (when download is true) - workDir = file("${project.ext.rootNodeDir}/nodejs") + workDir = file("${project.ext.nodeProjectDir.getAsFile().path}/nodejs") // The directory where npm is installed (when a specific version is defined) - npmWorkDir = file("${project.ext.rootNodeDir}/npm") + npmWorkDir = file("${project.ext.nodeProjectDir.getAsFile().path}/npm") // The Node.js project directory location // This is where the package.json file and node_modules directory are located diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt index 2f20701968b..8d7a10668be 100644 --- a/solr/CHANGES.txt +++ b/solr/CHANGES.txt @@ -166,7 +166,7 @@ Optimizations Bug Fixes --------------------- -(No changes) +* PR#2680: Improve reliablity of NpmTasks finding needed files/commands. (Tyler Bertrand via Eric Pugh) Dependency Upgrades ---------------------