Skip to content

Commit 2e173fc

Browse files
author
Roman Vasilevich
committed
Add support for environment variable TARANTOOL_REGISTRY
1 parent 99035a6 commit 2e173fc

21 files changed

+57
-559
lines changed

.github/workflows/tests.yml

+12-33
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,9 @@ on:
99
pull_request:
1010
branches: [ master ]
1111

12+
env:
13+
TARANTOOL_REGISTRY: registry.ps.tarantool.io
14+
1215
jobs:
1316
tests-cartridge-container:
1417
runs-on: ubuntu-latest
@@ -25,6 +28,9 @@ jobs:
2528
java-version: '8'
2629
cache: 'maven'
2730

31+
- name: Docker login to private registry
32+
run: docker login "$TARANTOOL_REGISTRY" -u admin -p "${{ secrets.TARANTOOL_REGISTRY_PASSWORD }}"
33+
2834
- name: Build and run unit tests
2935
run: ./mvnw -B verify -Djacoco.destFile=target/jacoco-cartridge-container.exec --file pom.xml
3036

@@ -35,39 +41,15 @@ jobs:
3541
TARANTOOL_VERSION: "2.11.2-ubuntu20.04"
3642
run: ./mvnw -B test -P integration -Djacoco.destFile=target/jacoco-cartridge-container.exec --file pom.xml
3743

44+
- name: Print docker system images
45+
run: docker images
46+
3847
- name: Upload jacoco exec results
3948
uses: actions/upload-artifact@v2
4049
with:
4150
name: tests-cartridge-container-jacoco
4251
path: "**/jacoco-cartridge-container.exec"
4352

44-
tests-ee:
45-
runs-on: ubuntu-latest
46-
timeout-minutes: 20
47-
steps:
48-
- uses: actions/checkout@v4
49-
50-
- name: Set up JDK 1.8
51-
uses: actions/setup-java@v3
52-
with:
53-
distribution: 'zulu'
54-
java-version: '8'
55-
cache: 'maven'
56-
57-
- name: Run enterprise tests
58-
env:
59-
TARANTOOL_SERVER_USER: root
60-
TARANTOOL_SERVER_GROUP: root
61-
DOWNLOAD_HOST: https://tarantool:${{ secrets.DOWNLOAD_SDK_TOKEN }}@download.tarantool.io
62-
SDK_PATH: enterprise/release/linux/x86_64/2.11/tarantool-enterprise-sdk-nogc64-2.11.2-0-r609.linux.x86_64.tar.gz
63-
run: ./mvnw -B test -P enterprise -Djacoco.destFile=target/jacoco-ee.exec --file pom.xml
64-
65-
- name: Upload jacoco exec results
66-
uses: actions/upload-artifact@v2
67-
with:
68-
name: tests-ee-jacoco
69-
path: "**/jacoco-ee.exec"
70-
7153
tests-tarantool-container:
7254
runs-on: ubuntu-latest
7355
timeout-minutes: 25
@@ -85,6 +67,9 @@ jobs:
8567
java-version: '8'
8668
cache: 'maven'
8769

70+
- name: Docker login to private registry
71+
run: docker login "$TARANTOOL_REGISTRY" -u admin -p "${{ secrets.TARANTOOL_REGISTRY_PASSWORD }}"
72+
8873
- name: Build and run integration matrix tests
8974
env:
9075
TARANTOOL_VERSION: ${{ matrix.tarantool-version }}
@@ -102,7 +87,6 @@ jobs:
10287
name: Jacoco Merge Results
10388
needs:
10489
- tests-cartridge-container
105-
- tests-ee
10690
- tests-tarantool-container
10791
runs-on: ubuntu-latest
10892
steps:
@@ -120,11 +104,6 @@ jobs:
120104
name: tests-cartridge-container-jacoco
121105
path: .
122106

123-
- uses: actions/download-artifact@v2
124-
with:
125-
name: tests-ee-jacoco
126-
path: .
127-
128107
- uses: actions/download-artifact@v2
129108
with:
130109
name: tests-tarantool-container-jacoco

CHANGELOG.md

+5
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,11 @@
22

33
## [Unreleased]
44

5+
## [1.3.3] - 2024-05-03
6+
- Add support for environment variable `TARANTOOL_REGISTRY`
7+
- Remove enterprise tests
8+
9+
510
## [1.3.2] - 2024-04-25
611
- Fix NullPointerException during building docker image when images with null tags exist on a local machine.
712

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ Add the Maven dependency:
1414
<dependency>
1515
<groupId>io.tarantool</groupId>
1616
<artifactId>testcontainers-java-tarantool</artifactId>
17-
<version>1.3.2</version>
17+
<version>1.3.3</version>
1818
</dependency>
1919
```
2020

pom.xml

+6-24
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,8 @@
164164
<systemPropertyVariables>
165165
<logback.configurationFile>${logging.config}</logback.configurationFile>
166166
<logLevel>${logging.logLevel}</logLevel>
167+
<!--suppress UnresolvedMavenProperty -->
168+
<TESTCONTAINERS_HUB_IMAGE_NAME_PREFIX>${env.TARANTOOL_REGISTRY}</TESTCONTAINERS_HUB_IMAGE_NAME_PREFIX>
167169
</systemPropertyVariables>
168170
<trimStackTrace>false</trimStackTrace>
169171
</configuration>
@@ -258,35 +260,13 @@
258260
<include>**/*IT.java</include>
259261
</includes>
260262
<excludes>
261-
<exclude>**/*EnterpriseIT.java</exclude>
262263
<exclude>**/*TarantoolContainer*IT.java</exclude>
263264
</excludes>
264265
<systemPropertyVariables>
265266
<logback.configurationFile>${logging.config}</logback.configurationFile>
266267
<logLevel>${logging.logLevel}</logLevel>
267-
</systemPropertyVariables>
268-
<trimStackTrace>false</trimStackTrace>
269-
</configuration>
270-
</plugin>
271-
</plugins>
272-
</build>
273-
</profile>
274-
<profile>
275-
<id>enterprise</id>
276-
<build>
277-
<plugins>
278-
<plugin>
279-
<groupId>org.apache.maven.plugins</groupId>
280-
<artifactId>maven-surefire-plugin</artifactId>
281-
<version>3.0.0-M5</version>
282-
<configuration>
283-
<includes>
284-
<include>**/*TestEnterprise.java</include>
285-
<include>**/*EnterpriseIT.java</include>
286-
</includes>
287-
<systemPropertyVariables>
288-
<logback.configurationFile>${logging.config}</logback.configurationFile>
289-
<logLevel>${logging.logLevel}</logLevel>
268+
<!--suppress UnresolvedMavenProperty -->
269+
<TESTCONTAINERS_HUB_IMAGE_NAME_PREFIX>${env.TARANTOOL_REGISTRY}</TESTCONTAINERS_HUB_IMAGE_NAME_PREFIX>
290270
</systemPropertyVariables>
291271
<trimStackTrace>false</trimStackTrace>
292272
</configuration>
@@ -380,6 +360,8 @@
380360
<systemPropertyVariables>
381361
<logback.configurationFile>${logging.config}</logback.configurationFile>
382362
<logLevel>${logging.logLevel}</logLevel>
363+
<!--suppress UnresolvedMavenProperty -->
364+
<TESTCONTAINERS_HUB_IMAGE_NAME_PREFIX>${env.TARANTOOL_REGISTRY}</TESTCONTAINERS_HUB_IMAGE_NAME_PREFIX>
383365
</systemPropertyVariables>
384366
<trimStackTrace>false</trimStackTrace>
385367
</configuration>

src/main/java/org/testcontainers/containers/TarantoolImageParams.java

+30
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import java.io.File;
44
import java.util.Collections;
5+
import java.util.HashMap;
56
import java.util.Map;
67

78
/**
@@ -38,6 +39,17 @@ public TarantoolImageParams(String tag, File dockerfile, Map<String, String> bui
3839
this.buildArgs = buildArgs;
3940
}
4041

42+
/**
43+
* Custom constructor for tarantool image parameters
44+
*
45+
* @param tag docker image tag
46+
* @param dockerfile dockerfile for building custom tarantool image
47+
* @param defaultImage default image name for building docker image
48+
*/
49+
public TarantoolImageParams(String tag, File dockerfile, String defaultImage) {
50+
this(tag, dockerfile, extract(defaultImage));
51+
}
52+
4153
/**
4254
* Getter for sdk version
4355
*
@@ -64,4 +76,22 @@ public File getDockerfile() {
6476
Map<String, String> getBuildArgs() {
6577
return buildArgs;
6678
}
79+
80+
/**
81+
* Extract build arguments from environment variables
82+
*
83+
* @param defaultImage default image name for building docker image
84+
* @return map of building arguments
85+
*/
86+
private static Map<String, String> extract(String defaultImage) {
87+
final Map<String, String> buildArgs = new HashMap<>();
88+
String registry = System.getenv("TARANTOOL_REGISTRY");
89+
if (registry != null && !registry.isEmpty()) {
90+
buildArgs.put("IMAGE", registry.endsWith("/") ? registry + defaultImage : registry + "/" + defaultImage);
91+
}
92+
buildArgs.put("DOWNLOAD_HOST", System.getenv("DOWNLOAD_HOST"));
93+
buildArgs.put("SDK_PATH", System.getenv("SDK_PATH"));
94+
buildArgs.put("CLUSTER_SRC_DIR", "vshard_cluster");
95+
return buildArgs;
96+
}
6797
}

src/main/resources/Dockerfile

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1-
ARG TARANTOOL_VERSION=2.11.2-ubuntu20.04
2-
FROM tarantool/tarantool:${TARANTOOL_VERSION} AS cartridge-base
1+
ARG TARANTOOL_VERSION="2.11.2-ubuntu20.04"
2+
ARG IMAGE="tarantool/tarantool:$TARANTOOL_VERSION"
3+
FROM $IMAGE AS cartridge-base
34

45
ARG TARANTOOL_SERVER_USER="root"
56
ARG TARANTOOL_SERVER_GROUP="root"

src/test/java/org/testcontainers/containers/enterprise/TarantoolMTlsContainerEnterpriseIT.java

-62
This file was deleted.

src/test/java/org/testcontainers/containers/enterprise/TarantoolSdkContainerEnterpriseIT.java

-40
This file was deleted.

src/test/java/org/testcontainers/containers/enterprise/TarantoolSslContainerEnterpriseIT.java

-61
This file was deleted.

0 commit comments

Comments
 (0)