From ee7214a82846c24bd651e6d3efa08723c8100976 Mon Sep 17 00:00:00 2001 From: Kyle Gorak Date: Thu, 31 Mar 2022 17:16:28 -0400 Subject: [PATCH] Fixes yarnBuild gradle task with Gradle v7+ and upgrade to Gradle 7.4.2. - task broken in 845caab4bb325e4bfb891ed384eeffc48e42e947 - moowork plugin no longer maintained resulting in broken gradle task - https://github.com/srs/gradle-node-plugin/issues/377 --- build.gradle.kts | 22 ++++++++++++---------- gradle/wrapper/gradle-wrapper.properties | 2 +- run_jar.sh | 2 +- test.sh | 4 +++- 4 files changed, 17 insertions(+), 13 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 2e1e0aec..36e5cb8b 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,4 +1,4 @@ -import com.moowork.gradle.node.yarn.YarnTask +import com.github.gradle.node.yarn.task.YarnTask import org.gradle.api.tasks.testing.logging.TestExceptionFormat import org.gradle.api.tasks.testing.logging.TestLogEvent import org.jetbrains.kotlin.gradle.tasks.KotlinCompile @@ -6,7 +6,7 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinCompile plugins { id("org.springframework.boot") version "2.5.5" id("io.spring.dependency-management") version "1.0.11.RELEASE" - id("com.moowork.node") version "1.3.1" + id("com.github.node-gradle.node") version "3.2.1" id("org.flywaydb.flyway") version "8.0.0" id("org.sonarqube") version "3.3" @@ -23,7 +23,10 @@ version = "0.0.1-SNAPSHOT" java.sourceCompatibility = JavaVersion.VERSION_15 node { - nodeModulesDir = file("${project.projectDir}/client") + download.set(false) + yarnWorkDir.set(file("${project.projectDir}/client")) + nodeProjectDir.set(file("${project.projectDir}/client")) + yarnWorkDir.set(file("${project.projectDir}/.gradle/yarn")) } noArg { @@ -108,14 +111,13 @@ tasks.withType { } } -tasks.register("yarnBuild", YarnTask::class) { - setWorkingDir("client") - args = listOf("build") - dependsOn("yarnInstall") +tasks.getByName("yarn_build") { + dependsOn("yarn_install") } -tasks.register("yarnInstall", YarnTask::class) { - setWorkingDir("client") - args = listOf("install") + +tasks.getByName("yarn_test") { + dependsOn("yarn_build") + environment.put("CI", "true") } tasks.getByName("jar") { diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index ffed3a25..aa991fce 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.2-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/run_jar.sh b/run_jar.sh index 0f17d3d2..2a91cde7 100755 --- a/run_jar.sh +++ b/run_jar.sh @@ -84,7 +84,7 @@ echo "" if [[ -z ${CI+x} ]]; then # Not in CI - SPRING_PROFILES_ACTIVE="$env" ./gradlew yarnBuild assemble bootRun --console=plain --args="--server.port=$PORT" & + SPRING_PROFILES_ACTIVE="$env" ./gradlew yarn_build assemble bootRun --console=plain --args="--server.port=$PORT" & else # In CI SPRING_PROFILES_ACTIVE="$env" java -jar -Dserver.port=$PORT ./build/libs/tsr-*.jar & diff --git a/test.sh b/test.sh index e36e002d..51a6904d 100755 --- a/test.sh +++ b/test.sh @@ -4,5 +4,7 @@ set -eou pipefail (cd client; yarn install;yarn lint:ci; CI=true yarn test;) ./gradlew clean build -(cd client;CI=true yarn build) +# Creates a jar for development/testing only. Not for use in production +# https://stackoverflow.com/questions/16145522/chrome-showing-error-as-refused-to-execute-inline-script-because-of-content-sec +(cd client;CI=true INLINE_RUNTIME_CHUNK=false yarn build) ./gradlew assemble \ No newline at end of file