Skip to content

Commit 993c82b

Browse files
author
subshell GmbH – Team Korora
authored
Merge branch 'testcontainers:master' into master
2 parents 4501877 + b5331f4 commit 993c82b

File tree

20 files changed

+80
-239
lines changed

20 files changed

+80
-239
lines changed

.github/workflows/combine-prs.yml

-138
This file was deleted.

RELEASING.md

+12-8
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,23 @@
11
# Release process
22

3-
Testcontainers' release process is automated as a Travis deployment. This describes the basic steps for a project member to perform a release.
3+
Testcontainers' release process is semi-automated through GitHub Actions. This describes the basic steps for a project member to perform a release.
44

55
## Steps
66

77
1. Ensure that the master branch is building and that tests are passing.
8-
1. Ensure that the [`CHANGELOG`](CHANGELOG.md) file is up to date and includes all merged features.
98
1. Create a new release on GitHub. **The tag name is used as the version**, so please keep the tag name plain (e.g. 1.2.3).
10-
1. Check that the Travis build passed.
11-
1. Release of published artifacts to Bintray is fully automated.
12-
1. After successful publication to Bintray, the artifacts must be synced to Maven Central.
9+
1. The release triggers a GitHub Action workflow, but it gets mostly build using results from the Gradle remote-cache. Therefore, this should be fairly fast.
10+
1. Login to Sonatype to check the staging repository.
11+
1. Get the staging url after GitHub Action workflow finished.
12+
1. Manually test the release with the staging url as maven repository url (e.g. critical issues and features).
13+
1. Run [TinSalver](https://github.com/bsideup/tinsalver) from GitHub using `npx` to sign artifact (see [TinsSalver README](https://github.com/bsideup/tinsalver/blob/main/README.md)).
14+
1. Close the release in Sonatype. This will evaluate the release based on given Sontaype rules and afterwards automatically sync to Maven Central.
15+
1. Handcraft and polish some of the release notes (e.g. substitute combinded dependency PRs and highlight certain features).
1316
1. When available through Maven Central, poke [Richard North](https://github.com/rnorth) to announce the release on Twitter!
1417

1518
## Internal details
1619

17-
* The process is done with Gradle and Bintray.
18-
* Bintray will automatically promote the release to Maven Central.
19-
* Travis secrets hold Bintray username/passwords that are used for publishing.
20+
* The process is done with GitHub Actions, TinSalver and Sonatype.
21+
* Sonatype will automatically promote the staging release to Maven Central.
22+
* Keybase needs to be installed on the developer machine.
23+
* GPG key of signing developer needs to be uplodaed to the Ubuntu keyserver (or other server supported by Sonatype).

core/build.gradle

+5-4
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ task jarFileTest(type: Test) {
5050
testClassesDirs = sourceSets.jarFileTest.output.classesDirs
5151
classpath = sourceSets.jarFileTest.runtimeClasspath
5252

53+
file(shadowJar.outputs.files.singleFile) // input for correct caching
5354
systemProperty("jarFile", shadowJar.outputs.files.singleFile)
5455

5556
dependsOn(shadowJar)
@@ -95,12 +96,12 @@ configurations.all {
9596
}
9697

9798
dependencies {
98-
baseline 'org.testcontainers:testcontainers:1.15.3', {
99+
baseline 'org.testcontainers:testcontainers:1.16.0', {
99100
exclude group: "*", module: "*"
100101
}
101102

102103
api 'junit:junit:4.12'
103-
api 'org.slf4j:slf4j-api:1.7.30'
104+
api 'org.slf4j:slf4j-api:1.7.32'
104105
compileOnly 'org.jetbrains:annotations:21.0.1'
105106
testCompileClasspath 'org.jetbrains:annotations:21.0.1'
106107
api 'org.apache.commons:commons-compress:1.20'
@@ -138,9 +139,9 @@ dependencies {
138139
}
139140

140141
testImplementation 'org.apache.httpcomponents:httpclient:4.5.9'
141-
testImplementation 'redis.clients:jedis:3.6.1'
142+
testImplementation 'redis.clients:jedis:3.6.3'
142143
testImplementation 'com.rabbitmq:amqp-client:5.12.0'
143-
testImplementation 'org.mongodb:mongo-java-driver:3.12.7'
144+
testImplementation 'org.mongodb:mongo-java-driver:3.12.9'
144145

145146
testImplementation ('org.mockito:mockito-core:3.11.2') {
146147
exclude(module: 'hamcrest-core')

core/src/jarFileTest/java/org/testcontainers/PublicBinaryAPITest.java

+1
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,7 @@ public void setUp() {
9393
case "org/testcontainers/dockerclient/UnixSocketClientProviderStrategy":
9494
case "org/testcontainers/dockerclient/DockerClientProviderStrategy":
9595
case "org/testcontainers/dockerclient/WindowsClientProviderStrategy":
96+
case "org/testcontainers/utility/DynamicPollInterval":
9697
Assume.assumeTrue(false);
9798
}
9899
}

core/src/main/java/org/testcontainers/containers/GenericContainer.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ public class GenericContainer<SELF extends GenericContainer<SELF>>
135135
@NonNull
136136
private String networkMode;
137137

138-
@NonNull
138+
@Nullable
139139
private Network network;
140140

141141
@NonNull

examples/linked-container/build.gradle

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@ repositories {
66
jcenter()
77
}
88
dependencies {
9-
compileOnly 'org.slf4j:slf4j-api:1.7.30'
9+
compileOnly 'org.slf4j:slf4j-api:1.7.32'
1010
implementation 'com.squareup.okhttp3:okhttp:4.9.1'
1111
implementation 'org.json:json:20210307'
12-
testImplementation 'org.postgresql:postgresql:42.2.22'
12+
testImplementation 'org.postgresql:postgresql:42.2.23'
1313
testImplementation 'ch.qos.logback:logback-classic:1.2.3'
1414
testImplementation 'org.testcontainers:postgresql'
1515
}

examples/redis-backed-cache-testng/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ repositories {
77
}
88

99
dependencies {
10-
compileOnly 'org.slf4j:slf4j-api:1.7.30'
10+
compileOnly 'org.slf4j:slf4j-api:1.7.32'
1111
implementation 'redis.clients:jedis:3.6.1'
1212
implementation 'com.google.code.gson:gson:2.8.7'
1313
implementation 'com.google.guava:guava:23.0'

examples/redis-backed-cache/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ repositories {
77
}
88

99
dependencies {
10-
compileOnly 'org.slf4j:slf4j-api:1.7.30'
10+
compileOnly 'org.slf4j:slf4j-api:1.7.32'
1111
implementation 'redis.clients:jedis:3.6.1'
1212
implementation 'com.google.code.gson:gson:2.8.7'
1313
implementation 'com.google.guava:guava:23.0'

examples/singleton-container/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ dependencies {
1111
implementation 'redis.clients:jedis:3.6.1'
1212
implementation 'com.google.code.gson:gson:2.8.7'
1313
implementation 'com.google.guava:guava:23.0'
14-
compileOnly 'org.slf4j:slf4j-api:1.7.30'
14+
compileOnly 'org.slf4j:slf4j-api:1.7.32'
1515

1616
testImplementation 'ch.qos.logback:logback-classic:1.2.3'
1717
testImplementation 'org.testcontainers:testcontainers'

examples/spring-boot-kotlin-redis/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
plugins {
22
id("org.springframework.boot") version "2.5.2"
33
id("org.jetbrains.kotlin.jvm") version "1.5.10"
4-
id("org.jetbrains.kotlin.plugin.spring") version "1.5.20"
4+
id("org.jetbrains.kotlin.plugin.spring") version "1.5.21"
55
}
66

77
apply plugin: 'io.spring.dependency-management'

modules/couchbase/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,6 @@ description = "Testcontainers :: Couchbase"
33
dependencies {
44
api project(':testcontainers')
55

6-
testImplementation 'com.couchbase.client:java-client:3.1.6'
6+
testImplementation 'com.couchbase.client:java-client:3.2.0'
77
testImplementation 'org.awaitility:awaitility:4.1.0'
88
}

modules/elasticsearch/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,6 @@ description = "TestContainers :: elasticsearch"
33
dependencies {
44
api project(':testcontainers')
55
testImplementation "org.elasticsearch.client:elasticsearch-rest-client:7.13.0"
6-
testImplementation "org.elasticsearch.client:transport:7.13.2"
6+
testImplementation "org.elasticsearch.client:transport:7.13.4"
77
testImplementation 'org.rnorth.visible-assertions:visible-assertions:2.1.2'
88
}

modules/jdbc-test/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,5 @@ dependencies {
1616

1717
api 'org.apache.tomcat:tomcat-jdbc:10.0.7'
1818
api 'org.vibur:vibur-dbcp:25.0'
19-
api 'mysql:mysql-connector-java:8.0.25'
19+
api 'mysql:mysql-connector-java:8.0.26'
2020
}

modules/junit-jupiter/build.gradle

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ dependencies {
77
testImplementation project(':mysql')
88
testImplementation project(':postgresql')
99
testImplementation 'com.zaxxer:HikariCP:4.0.3'
10-
testImplementation 'redis.clients:jedis:3.6.1'
10+
testImplementation 'redis.clients:jedis:3.6.3'
1111
testImplementation 'org.apache.httpcomponents:httpclient:4.5.13'
1212
testImplementation ('org.mockito:mockito-core:3.11.2') {
1313
exclude(module: 'hamcrest-core')
@@ -16,7 +16,7 @@ dependencies {
1616
testImplementation 'org.junit.jupiter:junit-jupiter-params:5.7.2'
1717

1818
testRuntimeOnly 'org.postgresql:postgresql:42.2.22'
19-
testRuntimeOnly 'mysql:mysql-connector-java:8.0.25'
19+
testRuntimeOnly 'mysql:mysql-connector-java:8.0.26'
2020
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.7.2'
2121
}
2222

0 commit comments

Comments
 (0)