-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsettings.gradle.kts
116 lines (106 loc) · 3.34 KB
/
settings.gradle.kts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
/*
* Copyright (c) 2023-2025, the Pixnews project authors and contributors. Please see the AUTHORS file for details.
* Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
* SPDX-License-Identifier: Apache-2.0
*/
pluginManagement {
includeBuild("gradle/plugin/settings")
}
plugins {
id("ru.pixnews.gradle.settings.root")
}
// Workaround for https://github.com/gradle/gradle/issues/26020
buildscript {
repositories {
mavenCentral()
google()
}
dependencies {
classpath("com.android.compose.screenshot:com.android.compose.screenshot.gradle.plugin:0.0.1-alpha08")
classpath("com.android.tools.build:gradle:8.8.0")
classpath("dev.zacsweers.anvil:gradle-plugin:0.4.1")
classpath("com.google.firebase:firebase-crashlytics-gradle:3.0.2")
classpath("org.jetbrains.kotlin:compose-compiler-gradle-plugin:2.1.0")
classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:2.0.21")
classpath("com.google.devtools.ksp:symbol-processing-gradle-plugin:2.1.0-1.0.29")
classpath("com.squareup.wire:wire-gradle-plugin:5.2.1")
classpath("com.github.ben-manes:gradle-versions-plugin:0.51.0")
classpath("androidx.room:androidx.room.gradle.plugin:2.7.0-alpha12")
classpath("com.diffplug.spotless:spotless-plugin-gradle:7.0.0")
classpath("com.saveourtool.diktat:diktat-gradle-plugin:2.0.0")
classpath("io.gitlab.arturbosch.detekt:detekt-formatting:1.23.7")
}
}
rootProject.name = "Pixnews"
rootProject.buildFileName = "pixnews.gradle.kts"
includeSubproject(":app")
includeSubproject(":test:app-mock")
includeSubproject(":test:benchmark")
listOf(
"analytics",
"appconfig",
"database",
"di:base",
"di:root-component",
"di:ui-base",
"di:workmanager",
"coroutines",
"featuretoggles:public",
"featuretoggles:internal",
"featuretoggles:datasource-firebase",
"featuretoggles:datasource-overrides",
"network:public",
"initializers",
"instrumented-test",
"domain-model",
"redux",
"ui:design",
"ui:design-test-constants",
"ui:assets-icons",
"ui:imageloader:coil",
"ui:imageloader:coil-test",
"ui:theme",
).forEach {
includeSubproject(":foundation:$it")
}
listOf(
"android-utils",
"compose-utils",
"coroutines",
"functional",
"instrumented-test",
"internationalization",
"kotlin-datetime-utils",
"kotlin-utils",
"test",
"ui-tooling",
).forEach {
includeSubproject(":library:$it")
}
listOf(
"calendar:public",
"calendar:data",
"calendar:data-public",
"calendar:datasource-igdb",
"calendar:test",
"calendar:test-constants",
"collections:public",
"collections:test-constants",
"featuretoggles:public",
"profile:public",
"profile:test-constants",
"root:public",
"root:test-constants",
).forEach {
includeSubproject(":feature:$it")
}
fun includeSubproject(projectPath: String, buildFileName: String? = null) {
include(projectPath)
val newBuildFileName = buildFileName ?: (
projectPath
.replace("""^:(?:feature|library|foundation|test)""".toRegex(), "")
.removePrefix(":")
.replace("""[:_-]+""".toRegex(), "-") + ".gradle.kts"
)
project(projectPath).buildFileName = newBuildFileName
}