diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml new file mode 100644 index 0000000..580c87d --- /dev/null +++ b/.github/workflows/pr.yml @@ -0,0 +1,26 @@ +name: PR + +on: + pull_request: [ main ] + +jobs: + android-lint: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Run Android lint + run: ./gradlew lint + + detekt: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Run detekt checks + run: ./gradlew detekt + + test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Run tests + run: ./gradlew :app:testCoreDebugUnitTest diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 0ecb2b1..935b526 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -6,6 +6,7 @@ plugins { alias(libs.plugins.android) alias(libs.plugins.kotlinAndroid) alias(libs.plugins.ksp) + alias(libs.plugins.detekt) base } @@ -90,7 +91,8 @@ android { lint { checkReleaseBuilds = false - abortOnError = false + abortOnError = true + warningsAsErrors = true } } diff --git a/build.gradle.kts b/build.gradle.kts index 9a736ee..b7bc003 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -2,4 +2,5 @@ plugins { alias(libs.plugins.android).apply(false) alias(libs.plugins.kotlinAndroid).apply(false) alias(libs.plugins.ksp).apply(false) + alias(libs.plugins.detekt).apply(false) } diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 600ae75..3a0f058 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -3,6 +3,8 @@ kotlin = "1.9.0" #KSP ksp = "1.9.0-1.0.12" +#Detekt +detekt = "1.23.3" #Room room = "2.6.0-alpha02" #Simple tools @@ -35,3 +37,4 @@ room = [ android = { id = "com.android.application", version.ref = "gradlePlugins-agp" } kotlinAndroid = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" } ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" } +detekt = { id = "io.gitlab.arturbosch.detekt", version.ref = "detekt" }