diff --git a/gradle/plugins/src/main/java/static_analysis/plugins/StaticAnalysisAndroidPlugin.kt b/gradle/plugins/src/main/java/static_analysis/plugins/StaticAnalysisAndroidPlugin.kt index dc67501..b011515 100644 --- a/gradle/plugins/src/main/java/static_analysis/plugins/StaticAnalysisAndroidPlugin.kt +++ b/gradle/plugins/src/main/java/static_analysis/plugins/StaticAnalysisAndroidPlugin.kt @@ -36,11 +36,11 @@ class StaticAnalysisAndroidPlugin : StaticAnalysisPlugin() { override fun createLinters(extension: StaticAnalysisExtension): List = mutableListOf().apply { add(DetektLinter()) - if (extension.isCpdLinterEnabled) { - CpdLinter() + if (extension.needCpdLinterEnabled) { + add(CpdLinter()) } - if (extension.isAndroidLinterEnabled) { - AndroidLinter() + if (extension.needAndroidLinterEnabled) { + add(AndroidLinter()) } } diff --git a/gradle/plugins/src/main/java/static_analysis/plugins/StaticAnalysisExtension.kt b/gradle/plugins/src/main/java/static_analysis/plugins/StaticAnalysisExtension.kt index cb5c2cc..8087b9d 100644 --- a/gradle/plugins/src/main/java/static_analysis/plugins/StaticAnalysisExtension.kt +++ b/gradle/plugins/src/main/java/static_analysis/plugins/StaticAnalysisExtension.kt @@ -3,6 +3,6 @@ package static_analysis.plugins open class StaticAnalysisExtension( var excludes: String = "", var buildScriptDir: String? = null, - var isCpdLinterEnabled: Boolean = true, - var isAndroidLinterEnabled: Boolean = false, + var needCpdLinterEnabled: Boolean = true, + var needAndroidLinterEnabled: Boolean = false, ) diff --git a/gradle/plugins/src/main/java/static_analysis/plugins/StaticAnalysisPlugin.kt b/gradle/plugins/src/main/java/static_analysis/plugins/StaticAnalysisPlugin.kt index d95535b..c1b59b0 100644 --- a/gradle/plugins/src/main/java/static_analysis/plugins/StaticAnalysisPlugin.kt +++ b/gradle/plugins/src/main/java/static_analysis/plugins/StaticAnalysisPlugin.kt @@ -42,8 +42,24 @@ abstract class StaticAnalysisPlugin : Plugin { } abstract fun createLinters(extension: StaticAnalysisExtension): List + abstract fun createStaticAnalysisTasks(project: Project, linters: List) + /** + * Project level + * + * В gradle.kts используйте этот extension. + * + * В классическом gradle, синтаксис ровно тот, же, но без использования extension. + * ``` + * staticAnalysis { + * excludes = ":name_example" + * buildScriptDir = buildScriptsDirectory + * needCpdLinterEnabled = false + * needAndroidLinterEnabled = false + * } + * ``` + */ fun Project.staticAnalysis(configure: Action): Unit = (this as org.gradle.api.plugins.ExtensionAware).extensions.configure(STATIC_ANALYSIS_EXT_NAME, configure)