Skip to content

Commit 51a3e6d

Browse files
authored
Merge pull request #612 from modelix/experiment/composite-build-for-plugin-tests
MODELIX-757 Use Gradle composite builds for modelix.core plugin tests
2 parents 7190562 + 898f3d9 commit 51a3e6d

File tree

11 files changed

+29
-123
lines changed

11 files changed

+29
-123
lines changed

bulk-model-sync-gradle-test/build.gradle.kts

Lines changed: 6 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -19,17 +19,8 @@ plugins {
1919
id("org.modelix.bulk-model-sync")
2020
}
2121

22-
val modelixCoreVersion: String = file("../version.txt").readText()
23-
24-
version = modelixCoreVersion
25-
2622
repositories {
2723
val modelixRegex = "org\\.modelix.*"
28-
mavenLocal {
29-
content {
30-
includeGroupByRegex(modelixRegex)
31-
}
32-
}
3324
gradlePluginPortal {
3425
content {
3526
excludeGroupByRegex(modelixRegex)
@@ -52,13 +43,12 @@ repositories {
5243
val kotlinGenDir = project.layout.buildDirectory.dir("metamodel/kotlin").get().asFile.apply { mkdirs() }
5344

5445
dependencies {
55-
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.2")
56-
implementation("org.modelix:model-server:$modelixCoreVersion")
57-
implementation("org.modelix:model-api-gen-runtime:$modelixCoreVersion")
58-
testImplementation("org.modelix:model-client:$modelixCoreVersion")
59-
testImplementation("org.modelix:bulk-model-sync-lib:$modelixCoreVersion")
60-
testImplementation("org.modelix.mps:model-adapters:$modelixCoreVersion")
61-
testImplementation("org.modelix:graph-lang-api:$modelixCoreVersion")
46+
implementation(libs.kotlin.coroutines.core)
47+
implementation("org.modelix:model-server")
48+
implementation("org.modelix:model-api-gen-runtime")
49+
testImplementation(project(":graph-lang-api"))
50+
testImplementation("org.modelix", "model-client", "", "jvmRuntimeElements")
51+
testImplementation("org.modelix:bulk-model-sync-lib")
6252
testImplementation(kotlin("test"))
6353
testImplementation(libs.xmlunit.core)
6454
}

bulk-model-sync-gradle-test/ci.sh

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,7 @@
33
set -e
44
set -x
55

6-
TEST_DIR="$(dirname "$(readlink -f "$0")")"
7-
cd "${TEST_DIR}"
8-
9-
(
10-
cd graph-lang-api
11-
./gradlew publishToMavenLocal --console=plain
12-
)
6+
cd "$(dirname "$(readlink -f "$0")")"
137

148
./gradlew assemble --console=plain
159

@@ -21,12 +15,9 @@ if [ "${CI}" != "true" ]; then
2115
}
2216
fi
2317

24-
cd "${TEST_DIR}/.."
25-
./gradlew :model-server:run --console=plain --args="-inmemory -port 28309" &
18+
./gradlew :modelix.core:model-server:run --console=plain --args="-inmemory -port 28309" &
2619
MODEL_SERVER_PID=$!
2720

28-
cd "${TEST_DIR}"
29-
3021
curl -X GET --retry 30 --retry-connrefused --retry-delay 1 http://localhost:28309/health
3122

3223
./gradlew runSyncTestPush --console=plain --stacktrace

bulk-model-sync-gradle-test/graph-lang-api/build.gradle.kts

Lines changed: 4 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,20 @@
11
plugins {
22
id("org.modelix.model-api-gen")
3-
`maven-publish`
4-
alias(libs.plugins.kotlin.jvm)
3+
kotlin("jvm")
54
}
65

76
repositories {
8-
mavenLocal()
97
gradlePluginPortal()
108
maven { url = uri("https://artifacts.itemis.cloud/repository/maven-mps/") }
119
mavenCentral()
1210
}
1311

14-
val modelixCoreVersion = file("../../version.txt").readText()
15-
16-
version = modelixCoreVersion
17-
1812
val mps: Configuration by configurations.creating
1913
val kotlinGenDir = project.layout.buildDirectory.dir("metamodel/kotlin").get().asFile.apply { mkdirs() }
2014

2115
dependencies {
2216
mps("com.jetbrains:mps:2021.2.5")
23-
api("org.modelix:model-api-gen-runtime:$modelixCoreVersion")
17+
api("org.modelix:model-api-gen-runtime")
2418
}
2519

2620
val mpsDir = project.layout.buildDirectory.dir("mps").get().asFile.apply { mkdirs() }
@@ -30,7 +24,7 @@ val resolveMps by tasks.registering(Copy::class) {
3024
into(mpsDir)
3125
}
3226

33-
val repoDir = projectDir.resolve("test-repo")
27+
val repoDir = projectDir.parentFile.resolve("test-repo")
3428

3529
kotlin {
3630
sourceSets.named("main") {
@@ -43,23 +37,11 @@ metamodel {
4337
dependsOn(resolveMps)
4438
mpsHome = mpsDir
4539
kotlinDir = kotlinGenDir
46-
modulesFrom(projectDir.parentFile.resolve("test-repo"))
40+
modulesFrom(repoDir)
4741
includeLanguage("GraphLang")
4842
registrationHelperName = "org.modelix.model.sync.bulk.gradle.test.GraphLanguagesHelper"
4943
}
5044

51-
publishing {
52-
publications {
53-
create<MavenPublication>("maven") {
54-
groupId = "org.modelix"
55-
from(components["kotlin"])
56-
}
57-
}
58-
repositories {
59-
mavenLocal()
60-
}
61-
}
62-
6345
tasks.named("processResources") {
6446
dependsOn("generateMetaModelSources")
6547
}

bulk-model-sync-gradle-test/graph-lang-api/gradle/wrapper/gradle-wrapper.jar

Lines changed: 0 additions & 1 deletion
This file was deleted.

bulk-model-sync-gradle-test/graph-lang-api/gradle/wrapper/gradle-wrapper.properties

Lines changed: 0 additions & 1 deletion
This file was deleted.

bulk-model-sync-gradle-test/graph-lang-api/gradlew

Lines changed: 0 additions & 1 deletion
This file was deleted.

bulk-model-sync-gradle-test/graph-lang-api/gradlew.bat

Lines changed: 0 additions & 1 deletion
This file was deleted.

bulk-model-sync-gradle-test/graph-lang-api/settings.gradle.kts

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

bulk-model-sync-gradle-test/settings.gradle.kts

Lines changed: 9 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -15,18 +15,9 @@
1515
*/
1616

1717
pluginManagement {
18-
val modelixCoreVersion: String = file("../version.txt").readText()
18+
includeBuild("..")
1919
val modelixRegex = "org\\.modelix.*"
20-
plugins {
21-
id("org.modelix.bulk-model-sync") version modelixCoreVersion
22-
id("org.modelix.model-api-gen") version modelixCoreVersion
23-
}
2420
repositories {
25-
mavenLocal {
26-
content {
27-
includeGroupByRegex(modelixRegex)
28-
}
29-
}
3021
gradlePluginPortal {
3122
content {
3223
excludeGroupByRegex(modelixRegex)
@@ -45,12 +36,12 @@ pluginManagement {
4536
}
4637
}
4738
dependencyResolutionManagement {
48-
repositories {
49-
mavenLocal {
50-
content {
51-
includeGroupByRegex(modelixRegex)
52-
}
39+
versionCatalogs {
40+
create("libs") {
41+
from(files("../gradle/libs.versions.toml"))
5342
}
43+
}
44+
repositories {
5445
gradlePluginPortal {
5546
content {
5647
excludeGroupByRegex(modelixRegex)
@@ -69,10 +60,8 @@ pluginManagement {
6960
}
7061
}
7162
}
72-
versionCatalogs {
73-
create("libs") {
74-
from("org.modelix:core-version-catalog:$modelixCoreVersion")
75-
}
76-
}
7763
}
7864
}
65+
66+
includeBuild("..")
67+
include("graph-lang-api")

model-api-gen-gradle-test/kotlin-generation/build.gradle.kts

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,20 +3,18 @@ plugins {
33
id("org.modelix.model-api-gen") apply false
44
}
55

6-
val modelixCoreVersion: String = projectDir.resolve("../../version.txt").readText()
7-
86
dependencies {
9-
implementation("org.modelix:model-api-gen-runtime:$modelixCoreVersion")
10-
implementation("org.modelix:modelql-typed:$modelixCoreVersion")
11-
implementation("org.modelix:modelql-untyped:$modelixCoreVersion")
7+
implementation("org.modelix:model-api-gen-runtime")
8+
implementation("org.modelix:modelql-typed")
9+
implementation("org.modelix:modelql-untyped")
1210

1311
testImplementation(kotlin("test"))
1412
testImplementation(kotlin("reflect"))
1513

16-
testImplementation("org.modelix:model-api:$modelixCoreVersion")
17-
testImplementation("org.modelix:model-client:$modelixCoreVersion")
18-
testImplementation("org.modelix:model-server-lib:$modelixCoreVersion")
19-
testImplementation("org.modelix:modelql-client:$modelixCoreVersion")
14+
testImplementation("org.modelix:model-api")
15+
testImplementation("org.modelix", "model-client", "", "jvmRuntimeElements")
16+
testImplementation("org.modelix:model-server-lib")
17+
testImplementation("org.modelix:modelql-client")
2018

2119
testImplementation(libs.ktor.server.core)
2220
testImplementation(libs.ktor.server.cors)

0 commit comments

Comments
 (0)