From d91d25f126a2e8835c7053711c39d1f6c8fb72dd Mon Sep 17 00:00:00 2001 From: Denis Karmyshakov Date: Mon, 11 Feb 2019 14:40:10 +0300 Subject: [PATCH] Checkstyle and Pmd now disabled by default --- gradle/commonStaticAnalysis.gradle | 35 ++++++++++++++++++------------ gradle/staticAnalysis.gradle | 11 ++++++---- 2 files changed, 28 insertions(+), 18 deletions(-) diff --git a/gradle/commonStaticAnalysis.gradle b/gradle/commonStaticAnalysis.gradle index 3724eca..8432daa 100644 --- a/gradle/commonStaticAnalysis.gradle +++ b/gradle/commonStaticAnalysis.gradle @@ -73,14 +73,18 @@ ext.getIdeaFormatTask = { isAndroidProject, sources -> } } -ext.getStaticAnalysisTaskNames = { isAndroidProject, sources, buildVariant -> +ext.getStaticAnalysisTaskNames = { isAndroidProject, sources, buildVariant, checkstyleEnabled, pmdEnabled -> def tasksNames = new ArrayList() try { tasksNames.add(getCpdTask(isAndroidProject, sources)) tasksNames.add(getKotlinDetektTask()) if (isAndroidProject) { - tasksNames.add(getCheckstyleTask(sources)) - tasksNames.add(getPmdTask(sources)) + if (checkstyleEnabled) { + tasksNames.add(getCheckstyleTask(sources)) + } + if (pmdEnabled) { + tasksNames.add(getPmdTask(sources)) + } tasksNames.add(getLintTask(buildVariant)) } } catch (Exception exception) { @@ -111,10 +115,21 @@ ext.generateReport = { isAndroidProject -> } if (isAndroidProject) { - def file = new File("${project.buildDir}/reports/pmd.xml") - if (file.exists()) { + def checkstyleFile = new File("${project.buildDir}/reports/checkstyle.xml") + if (checkstyleFile.exists()) { previousCount = count - count = appendPmdErrors(count, file) + count = appendCheckstyleErrors(count, checkstyleFile) + if (count - previousCount > 0) { + consoleReport.append("\nCheckstyle: FAILED (" + (count - previousCount) + " errors)") + } else { + consoleReport.append("\nCheckstyle: PASSED") + } + } + + def pmdFile = new File("${project.buildDir}/reports/pmd.xml") + if (pmdFile.exists()) { + previousCount = count + count = appendPmdErrors(count, pmdFile) if (count - previousCount > 0) { consoleReport.append("\nPMD: FAILED (" + (count - previousCount) + " errors)") } else { @@ -129,14 +144,6 @@ ext.generateReport = { isAndroidProject -> } else { consoleReport.append("\nLint: PASSED") } - - previousCount = count - count = appendCheckstyleErrors(count, new File("${project.buildDir}/reports/checkstyle.xml")) - if (count - previousCount > 0) { - consoleReport.append("\nCheckstyle: FAILED (" + (count - previousCount) + " errors)") - } else { - consoleReport.append("\nCheckstyle: PASSED") - } } if (count > 0) { diff --git a/gradle/staticAnalysis.gradle b/gradle/staticAnalysis.gradle index 6ba4714..b615ad4 100644 --- a/gradle/staticAnalysis.gradle +++ b/gradle/staticAnalysis.gradle @@ -18,9 +18,12 @@ gradle.projectsEvaluated { } def excludes = rootProject.extensions.findByName("staticAnalysisExcludes") + def checkstyleEnabled = rootProject.extensions.findByName("checkstyleEnabled") ?: false + def pmdEnabled = rootProject.extensions.findByName("pmdEnabled") ?: false - def androidStaticAnalysisTasks = getStaticAnalysisTaskNames(true, getAndroidProjectSources(excludes), null) - def androidIdeaFormatTask = getIdeaFormatTask(true, getAndroidProjectSources(excludes)) + def androidSources = getAndroidProjectSources(excludes) + def androidStaticAnalysisTasks = getStaticAnalysisTaskNames(true, androidSources, null, checkstyleEnabled, pmdEnabled) + def androidIdeaFormatTask = getIdeaFormatTask(true, androidSources) task staticAnalysisWithFormatting { androidStaticAnalysisTasks.each { task -> @@ -40,7 +43,7 @@ gradle.projectsEvaluated { } } - def serverStaticAnalysisTasks = getStaticAnalysisTaskNames(false, getServerProjectSources(excludes), null) + def serverStaticAnalysisTasks = getStaticAnalysisTaskNames(false, getServerProjectSources(excludes), null, checkstyleEnabled, pmdEnabled) def serverIdeaFormatTask = getIdeaFormatTask(false, getServerProjectSources(excludes)) task serverStaticAnalysisWithFormatting { @@ -63,7 +66,7 @@ gradle.projectsEvaluated { android.applicationVariants.all { variant -> task("staticAnalysis${variant.name.capitalize()}") { - dependsOn getStaticAnalysisTaskNames(true, getAndroidProjectSources(excludes), variant) + dependsOn getStaticAnalysisTaskNames(true, androidSources, variant, checkstyleEnabled, pmdEnabled) doFirst { generateReport(true) } } }