diff options
Diffstat (limited to 'language-web/build.gradle')
-rw-r--r-- | language-web/build.gradle | 33 |
1 files changed, 18 insertions, 15 deletions
diff --git a/language-web/build.gradle b/language-web/build.gradle index 0403bb3d..526ba2da 100644 --- a/language-web/build.gradle +++ b/language-web/build.gradle | |||
@@ -27,9 +27,11 @@ def serverMainClass = 'tools.refinery.language.web.ServerLauncher' | |||
27 | apply plugin: 'org.siouan.frontend-jdk11' | 27 | apply plugin: 'org.siouan.frontend-jdk11' |
28 | import org.siouan.frontendgradleplugin.infrastructure.gradle.RunNpmYarn | 28 | import org.siouan.frontendgradleplugin.infrastructure.gradle.RunNpmYarn |
29 | 29 | ||
30 | def nodeDirectory = "${rootDir}/.gradle/node" | ||
31 | |||
30 | frontend { | 32 | frontend { |
31 | nodeVersion = project.ext.nodeVersion | 33 | nodeVersion = project.ext.nodeVersion |
32 | nodeInstallDirectory = file("${rootDir}/.gradle/node") | 34 | nodeInstallDirectory = file(nodeDirectory) |
33 | yarnEnabled = true | 35 | yarnEnabled = true |
34 | yarnVersion = project.ext.yarnVersion | 36 | yarnVersion = project.ext.yarnVersion |
35 | yarnInstallDirectory = file("${rootDir}/.gradle/yarn") | 37 | yarnInstallDirectory = file("${rootDir}/.gradle/yarn") |
@@ -49,23 +51,16 @@ assembleFrontend.configure { | |||
49 | outputs.dir productionResources | 51 | outputs.dir productionResources |
50 | } | 52 | } |
51 | 53 | ||
52 | tasks.register('webpackStats', RunNpmYarn) { | ||
53 | dependsOn installFrontend | ||
54 | dependsOn generateXtextLanguage | ||
55 | inputs.dir 'src/main/css' | ||
56 | inputs.dir 'src/main/html' | ||
57 | inputs.dir 'src/main/js' | ||
58 | inputs.dir "${buildDir}/generated/sources/xtext/js" | ||
59 | inputs.files('package.json', 'yarn.lock', 'webpack.config.js') | ||
60 | outputs.file "${buildDir}/webpack/stats.json" | ||
61 | script = 'run stats' | ||
62 | } | ||
63 | |||
64 | def eslint = tasks.register('eslint', RunNpmYarn) { | 54 | def eslint = tasks.register('eslint', RunNpmYarn) { |
65 | dependsOn installFrontend | 55 | dependsOn installFrontend |
66 | inputs.dir 'src/main/js' | 56 | inputs.dir 'src/main/js' |
67 | inputs.files('.eslintrc.js', 'tsconfig.json') | 57 | inputs.files('.eslintrc.js', 'tsconfig.json') |
68 | script = 'run check:eslint' | 58 | if (project.hasProperty('ci')) { |
59 | outputs.file "${buildDir}/eslint.json" | ||
60 | script = 'run check:eslint:ci' | ||
61 | } else { | ||
62 | script = 'run check:eslint' | ||
63 | } | ||
69 | group = 'verification' | 64 | group = 'verification' |
70 | description = 'Check for TypeScript errors.' | 65 | description = 'Check for TypeScript errors.' |
71 | } | 66 | } |
@@ -74,7 +69,12 @@ def stylelint = tasks.register('stylelint', RunNpmYarn) { | |||
74 | dependsOn installFrontend | 69 | dependsOn installFrontend |
75 | inputs.dir 'src/main/css' | 70 | inputs.dir 'src/main/css' |
76 | inputs.file '.stylelintrc.js' | 71 | inputs.file '.stylelintrc.js' |
77 | script = 'run check:stylelint' | 72 | if (project.hasProperty('ci')) { |
73 | outputs.file "${buildDir}/stylelint.json" | ||
74 | script = 'run check:stylelint:ci' | ||
75 | } else { | ||
76 | script = 'run check:stylelint' | ||
77 | } | ||
78 | group = 'verification' | 78 | group = 'verification' |
79 | description = 'Check for Sass errors.' | 79 | description = 'Check for Sass errors.' |
80 | } | 80 | } |
@@ -142,4 +142,7 @@ sonarqube.properties { | |||
142 | 'src/main/css/xtext/**', | 142 | 'src/main/css/xtext/**', |
143 | 'src/main/js/xtext/**', | 143 | 'src/main/js/xtext/**', |
144 | ] | 144 | ] |
145 | property 'sonar.nodejs.executable', "${nodeDirectory}/bin/node" | ||
146 | property 'sonar.eslint.reportPaths', "${buildDir}/eslint.json" | ||
147 | property 'sonar.css.stylelint.reportPaths', "${buildDir}/stylelint.json" | ||
145 | } | 148 | } |