sonar { properties { property 'sonar.projectName', "${projectTitle} :: Web :: Design System" property "sonar.sources", "src" property "sonar.exclusions", "src/**/__tests__/**,src/types/**,src/@types/**,src/helpers/testUtils.tsx" property "sonar.tests", "src" property "sonar.test.inclusions", "src/**/__tests__/**" property "sonar.eslint.reportPaths", "eslint-report/eslint-report.json" property "sonar.javascript.lcov.reportPaths", "./coverage/lcov.info" property "sonar.coverage.exclusions", "src/components/icons/**/*,src/components/visual-components/**/*" property "sonar.cpd.exclusions", "**/*" } } jar.onlyIf {false} compileJava.onlyIf {false} processResources.onlyIf {false} task "yarn_validate-ci"(type: Exec) { dependsOn ":server:sonar-web:yarn_run" inputs.dir('src') ['package.json', '../yarn.lock', 'jest.config.js'].each { inputs.file(it).withPathSensitivity(PathSensitivity.RELATIVE) } outputs.dir('coverage') outputs.cacheIf { true } commandLine osAdaptiveCommand(['npm', 'run', 'validate-ci']) } task "yarn_lint-report-ci"(type: Exec) { dependsOn ":server:sonar-web:yarn_run" ['src'].each { inputs.dir(it) } ['package.json', '../yarn.lock', 'tsconfig.json', '.eslintrc'].each { inputs.file(it) } outputs.dir('eslint-report') outputs.cacheIf { true } commandLine osAdaptiveCommand(['npm', 'run', 'lint-report-ci']) }