From fcdced1a00a80e4a7a5e35611e722ec869aebf3a Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Sun, 25 Apr 2021 04:33:28 +0530 Subject: [PATCH] build: configure Spotless Signed-off-by: Harsh Shandilya --- buildSrc/src/main/java/LobstersPlugin.kt | 5 +++++ buildSrc/src/main/java/SpotlessConfig.kt | 15 +++++++++++++++ 2 files changed, 20 insertions(+) create mode 100644 buildSrc/src/main/java/SpotlessConfig.kt diff --git a/buildSrc/src/main/java/LobstersPlugin.kt b/buildSrc/src/main/java/LobstersPlugin.kt index 02bfa025..63652220 100644 --- a/buildSrc/src/main/java/LobstersPlugin.kt +++ b/buildSrc/src/main/java/LobstersPlugin.kt @@ -7,6 +7,8 @@ import com.android.build.gradle.TestedExtension import com.android.build.gradle.internal.dsl.BaseAppModuleExtension import com.android.build.gradle.internal.plugins.AppPlugin import com.android.build.gradle.internal.plugins.LibraryPlugin +import com.diffplug.gradle.spotless.SpotlessExtension +import com.diffplug.gradle.spotless.SpotlessPlugin import com.squareup.sqldelight.gradle.SqlDelightExtension import com.squareup.sqldelight.gradle.SqlDelightPlugin import org.gradle.api.Plugin @@ -52,6 +54,9 @@ class LobstersPlugin : Plugin { is SqlDelightPlugin -> { project.extensions.getByType().configureLobstersDatabase() } + is SpotlessPlugin -> { + project.extensions.getByType().configure() + } } } } diff --git a/buildSrc/src/main/java/SpotlessConfig.kt b/buildSrc/src/main/java/SpotlessConfig.kt new file mode 100644 index 00000000..ee7ee94a --- /dev/null +++ b/buildSrc/src/main/java/SpotlessConfig.kt @@ -0,0 +1,15 @@ +import com.diffplug.gradle.spotless.SpotlessExtension + +internal fun SpotlessExtension.configure() { + ratchetFrom = "origin/develop" + kotlin { + ktfmt().googleStyle() + target("src/**/*.kt", "**/*.kts") + } + format("xml") { + target("**/*.xml") + trimTrailingWhitespace() + indentWithSpaces() + endWithNewline() + } +}