Skip to content

Commit 4468f9f

Browse files
authored
create testprojects for each module (#4)
* create testprojects for each module * use Java 17
1 parent 7a40df2 commit 4468f9f

22 files changed

Lines changed: 181 additions & 52 deletions

File tree

.github/workflows/github-build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ jobs:
1414
- name: Set up Java
1515
uses: actions/setup-java@v3
1616
with:
17-
java-version: '11'
17+
java-version: '17'
1818
distribution: 'temurin'
1919
- name: Validate Gradle wrapper
2020
uses: gradle/wrapper-validation-action@v1

.github/workflows/github-publish.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ jobs:
2424
- name: Set up Java
2525
uses: actions/setup-java@v3
2626
with:
27-
java-version: '11'
27+
java-version: '17'
2828
distribution: 'temurin'
2929
- name: Validate Gradle wrapper
3030
uses: gradle/wrapper-validation-action@v1

build.gradle.kts

Lines changed: 51 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ plugins {
22
`maven-publish`
33
id("io.github.gradle-nexus.publish-plugin") version "1.1.0"
44
signing
5+
id("io.micronaut.test-resources") version "3.6.7" apply (false)
56
}
67

78
description = "Test-Resources for Spring Boot"
@@ -19,65 +20,72 @@ subprojects {
1920
mavenCentral()
2021
}
2122

22-
plugins.apply(MavenPublishPlugin::class)
23-
plugins.apply(SigningPlugin::class)
23+
if (!this.path.startsWith(":testprojects")) {
24+
plugins.apply(MavenPublishPlugin::class)
25+
plugins.apply(SigningPlugin::class)
26+
}
2427

2528
afterEvaluate {
2629

27-
if (!name.endsWith("-client")) {
30+
if (this.subprojects.isEmpty()) {
2831
dependencies {
29-
"implementation"(libs.micronaut.testresources.testcontainers)
32+
"testImplementation"(libs.jupiter.api)
33+
"testRuntimeOnly"(libs.jupiter.engine)
34+
"testImplementation"(libs.assertj)
3035
}
3136
}
3237

33-
dependencies {
34-
"testImplementation"(libs.jupiter.api)
35-
"testRuntimeOnly"(libs.jupiter.engine)
36-
"testImplementation"(libs.assertj)
37-
}
38+
if (!this.path.startsWith(":testprojects")) {
3839

39-
configure<PublishingExtension> {
40-
publications {
41-
create<MavenPublication>("maven") {
42-
from(components["java"])
43-
pom {
44-
name.set(project.name)
45-
description.set(project.description)
46-
url.set("https://github.com/cloudflightio/springboot-testresources")
47-
licenses {
48-
license {
49-
name.set("The Apache License, Version 2.0")
50-
url.set("http://www.apache.org/licenses/LICENSE-2.0.txt")
40+
if (!name.endsWith("-client")) {
41+
dependencies {
42+
"implementation"(libs.micronaut.testresources.testcontainers)
43+
}
44+
}
45+
46+
configure<PublishingExtension> {
47+
publications {
48+
create<MavenPublication>("maven") {
49+
from(components["java"])
50+
pom {
51+
name.set(project.name)
52+
description.set(project.description)
53+
url.set("https://github.com/cloudflightio/springboot-testresources")
54+
licenses {
55+
license {
56+
name.set("The Apache License, Version 2.0")
57+
url.set("http://www.apache.org/licenses/LICENSE-2.0.txt")
58+
}
5159
}
52-
}
53-
inceptionYear.set("2023")
54-
organization {
55-
name.set("Cloudflight")
56-
url.set("https://cloudflight.io")
57-
}
58-
developers {
59-
developer {
60-
id.set("cloudflight")
61-
name.set("Cloudflight Team")
62-
email.set("opensource@cloudflight.io")
60+
inceptionYear.set("2023")
61+
organization {
62+
name.set("Cloudflight")
63+
url.set("https://cloudflight.io")
64+
}
65+
developers {
66+
developer {
67+
id.set("cloudflight")
68+
name.set("Cloudflight Team")
69+
email.set("opensource@cloudflight.io")
70+
}
71+
}
72+
scm {
73+
connection.set("scm:ggit@github.com:cloudflightio/springboot-testresources.git")
74+
developerConnection.set("scm:git@github.com:cloudflightio/springboot-testresources.git")
75+
url.set("https://github.com/cloudflightio/springboot-testresources")
6376
}
64-
}
65-
scm {
66-
connection.set("scm:ggit@github.com:cloudflightio/springboot-testresources.git")
67-
developerConnection.set("scm:git@github.com:cloudflightio/springboot-testresources.git")
68-
url.set("https://github.com/cloudflightio/springboot-testresources")
6977
}
7078
}
7179
}
7280
}
73-
}
7481

75-
configure<SigningExtension> {
76-
setRequired {
77-
System.getenv("PGP_SECRET") != null
82+
configure<SigningExtension> {
83+
setRequired {
84+
System.getenv("PGP_SECRET") != null
85+
}
86+
useInMemoryPgpKeys(System.getenv("PGP_SECRET"), System.getenv("PGP_PASSPHRASE"))
87+
sign(publishing.publications.getByName("maven"))
7888
}
79-
useInMemoryPgpKeys(System.getenv("PGP_SECRET"), System.getenv("PGP_PASSPHRASE"))
80-
sign(publishing.publications.getByName("maven"))
8189
}
8290
}
8391
}

gradle.properties

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,3 @@
11
kotlin.code.style=official
2+
3+
micronautVersion=3.6.0

settings.gradle.kts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,6 @@ rootProject.name = "springboot-testresources"
77
include("springboot-testresources-client")
88
include("springboot-testresources-minio")
99
include("springboot-testresources-jdbc-mariadb")
10+
11+
include("testprojects:jdbc:mariadb")
12+
include("testprojects:minio")

springboot-testresources-jdbc-mariadb/build.gradle.kts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
plugins {
2+
id("io.micronaut.test-resources")
3+
}
4+
15
description = "Spring Boot TestResourceProvider for MariaDB"
26

37
dependencies {

springboot-testresources-jdbc-mariadb/src/main/java/io/cloudflight/testresources/springboot/AbstractJdbcTestResourceProvider.java renamed to springboot-testresources-jdbc-mariadb/src/main/java/io/cloudflight/testresources/springboot/jdbc/mariadb/AbstractJdbcTestResourceProvider.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package io.cloudflight.testresources.springboot;
1+
package io.cloudflight.testresources.springboot.jdbc.mariadb;
22

33
import io.micronaut.testresources.testcontainers.AbstractTestContainersProvider;
44
import org.testcontainers.containers.JdbcDatabaseContainer;

springboot-testresources-jdbc-mariadb/src/main/java/io/cloudflight/testresources/springboot/MariaDbTestResourcesProvider.java renamed to springboot-testresources-jdbc-mariadb/src/main/java/io/cloudflight/testresources/springboot/jdbc/mariadb/MariaDbTestResourcesProvider.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package io.cloudflight.testresources.springboot;
1+
package io.cloudflight.testresources.springboot.jdbc.mariadb;
22

33
import org.testcontainers.containers.MariaDBContainer;
44
import org.testcontainers.utility.DockerImageName;
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
io.cloudflight.testresources.springboot.MariaDbTestResourcesProvider
1+
io.cloudflight.testresources.springboot.jdbc.mariadb.MariaDbTestResourcesProvider

springboot-testresources-jdbc-mariadb/src/test/java/io/cloudflight/testresources/springboot/MariaDbTestResourcesProviderTest.java renamed to springboot-testresources-jdbc-mariadb/src/test/java/io/cloudflight/testresources/springboot/jdbc/mariadb/MariaDbTestResourcesProviderTest.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1-
package io.cloudflight.testresources.springboot;
1+
package io.cloudflight.testresources.springboot.jdbc.mariadb;
22

3+
import io.cloudflight.testresources.springboot.jdbc.mariadb.MariaDbTestResourcesProvider;
34
import org.junit.jupiter.api.Test;
45

56
import java.util.Collections;

0 commit comments

Comments
 (0)