Skip to content

Commit 5841b10

Browse files
committed
Remove SpotlessConventionPlugin
1 parent 5374757 commit 5841b10

File tree

7 files changed

+37
-37
lines changed

7 files changed

+37
-37
lines changed

benchmark/build.gradle.kts

Lines changed: 1 addition & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,10 @@
1313
* See the License for the specific language governing permissions and
1414
* limitations under the License.
1515
*/
16-
import io.getstream.video.configureFlavors
17-
1816
plugins {
1917
alias(libs.plugins.stream.android.test)
2018
alias(libs.plugins.baseline.profile)
21-
id("io.getstream.spotless")
19+
id("io.getstream.video.android.demoflavor")
2220
}
2321

2422
android {
@@ -51,17 +49,6 @@ android {
5149
}
5250
}
5351

54-
// Use the same flavor dimensions as the application to allow generating Baseline Profiles on prod,
55-
// which is more close to what will be shipped to users (no fake data), but has ability to run the
56-
// benchmarks on demo, so we benchmark on stable data.
57-
configureFlavors(this) { flavor ->
58-
buildConfigField(
59-
"String",
60-
"APP_FLAVOR_SUFFIX",
61-
"\"${flavor.applicationIdSuffix ?: ""}\""
62-
)
63-
}
64-
6552
targetProjectPath = ":demo-app"
6653

6754
testOptions.managedDevices.devices {

build-logic/convention/build.gradle.kts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,9 @@ gradlePlugin {
3434
id = "io.getstream.video.android.library"
3535
implementationClass = "AndroidLibraryConventionPlugin"
3636
}
37-
register("spotless") {
38-
id = "io.getstream.spotless"
39-
implementationClass = "SpotlessConventionPlugin"
37+
register("demoFlavorConvention") {
38+
id = "io.getstream.video.android.demoflavor"
39+
implementationClass = "DemoFlavorConventionPlugin"
4040
}
4141
}
4242
}
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
import com.android.build.api.dsl.ApplicationExtension
2+
import com.android.build.api.dsl.TestExtension
3+
import io.getstream.video.configureFlavors
4+
import org.gradle.api.Plugin
5+
import org.gradle.api.Project
6+
import org.gradle.kotlin.dsl.configure
7+
8+
class DemoFlavorConventionPlugin : Plugin<Project> {
9+
override fun apply(target: Project) {
10+
with(target) {
11+
pluginManager.withPlugin("com.android.application") {
12+
extensions.configure<ApplicationExtension>(::configureFlavors)
13+
}
14+
pluginManager.withPlugin("com.android.test") {
15+
extensions.configure<TestExtension>(::configureFlavors)
16+
}
17+
}
18+
}
19+
}

build-logic/convention/src/main/kotlin/SpotlessConventionPlugin.kt

Lines changed: 0 additions & 8 deletions
This file was deleted.

build-logic/convention/src/main/kotlin/io/getstream/video/DemoFlavor.kt

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -20,25 +20,29 @@ enum class VideoDemoFlavor(val dimension: FlavorDimension, val applicationIdSuff
2020
production(FlavorDimension.contentType),
2121
}
2222

23-
fun configureFlavors(
23+
internal fun configureFlavors(
2424
commonExtension: CommonExtension<*, *, *, *, *, *>,
25-
flavorConfigurationBlock: ProductFlavor.(flavor: VideoDemoFlavor) -> Unit = {}
2625
) {
2726
commonExtension.apply {
2827
flavorDimensions += "environment"
2928
productFlavors {
30-
VideoDemoFlavor.values().forEach {
31-
create(it.name) {
29+
VideoDemoFlavor.values().forEach { flavor ->
30+
create(flavor.name) {
3231
dimension = "environment"
33-
flavorConfigurationBlock(this, it)
32+
buildConfigField(
33+
"String",
34+
"APP_FLAVOR_SUFFIX",
35+
"\"${flavor.applicationIdSuffix.orEmpty()}\"",
36+
)
37+
3438
if (this@apply is ApplicationExtension && this is ApplicationProductFlavor) {
35-
if (it.applicationIdSuffix != null) {
36-
applicationIdSuffix = it.applicationIdSuffix
39+
if (flavor.applicationIdSuffix != null) {
40+
applicationIdSuffix = flavor.applicationIdSuffix
3741
}
3842
}
3943
proguardFiles("benchmark-rules.pro")
4044
}
4145
}
4246
}
4347
}
44-
}
48+
}

demo-app/build.gradle.kts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,12 @@ import com.github.triplet.gradle.androidpublisher.ResolutionStrategy
2121
import io.getstream.video.FlavorDimension
2222
import io.getstream.video.VideoDemoFlavor
2323
import io.getstream.video.android.Configuration
24-
import io.getstream.video.configureFlavors
2524
import java.io.FileInputStream
2625
import java.util.Properties
2726

2827
plugins {
2928
id("io.getstream.video.android.application.compose")
29+
id("io.getstream.video.android.demoflavor")
3030
id("com.google.gms.google-services")
3131
id(libs.plugins.firebase.crashlytics.get().pluginId)
3232
id(libs.plugins.kotlin.serialization.get().pluginId)
@@ -91,8 +91,6 @@ android {
9191
}
9292
}
9393

94-
configureFlavors(this)
95-
9694
buildTypes {
9795
getByName("debug") {
9896
versionNameSuffix = "-DEBUG"

gradle/libs.versions.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ cameraCamera2 = "1.3.4"
1010
kover = "0.8.3"
1111
sonarqube = "6.0.1.5171"
1212
spotless = "6.21.0"
13-
streamConventions = "local-test"
13+
streamConventions = "0.3.0"
1414
mavenPublish = "0.34.0"
1515
kotlin = "1.9.25"
1616
ksp = "1.9.25-1.0.20"

0 commit comments

Comments
 (0)