Skip to content

Commit 47ca0cf

Browse files
committed
IGNITE-27046 Update docker image name resolution for migration tools subprojects
1 parent 4ff66be commit 47ca0cf

File tree

5 files changed

+28
-6
lines changed

5 files changed

+28
-6
lines changed

buildscripts/migration-tools-integration-test.gradle

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,16 @@ integrationTest {
2121
systemProperty "ignite2.docker.image", project.property("ignite2.docker.image")
2222
systemProperty "ignite3.docker.image", project(":packaging").docker_image_name
2323

24+
// Evaluate lazily because the project might not exist yet.
25+
doFirst {
26+
var cdin = project(":migration-tools-packaging-cli").findProperty("docker_image_name")
27+
if (cdin) {
28+
systemProperty "migrationtools.cli.docker.image", cdin
29+
}
30+
31+
systemProperty "migrationtools.e2erunner.docker.image", project(":migration-tools-e2e-ai2-runner").docker_image_name
32+
}
33+
2434
dependsOn ":migration-tools-e2e-ai2-runner:docker"
2535
dependsOn ":packaging:docker"
2636
}

migration-tools/modules/migration-tools-commons-tests/src/main/java/org/apache/ignite/migrationtools/tests/containers/Ignite2ClusterWithSamples.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,12 @@ public void beforeAll(ExtensionContext context) throws Exception {
117117
}
118118

119119
protected GenericContainer createSeedDataCountainer(Network network) {
120-
return new GenericContainer("ai3-migration-tools/e2e-tests:latest")
120+
String imageName = System.getProperty("migrationtools.e2erunner.docker.image");
121+
if (imageName == null) {
122+
throw new IllegalArgumentException("'migrationtools.e2erunner.docker.image' property must be defined");
123+
}
124+
125+
return new GenericContainer(imageName)
121126
.withCopyFileToContainer(MountableFile.forHostPath(FullSampleCluster.CLUSTER_CFG_PATH), "/opt/app/config.xml")
122127
.withNetwork(network);
123128
}

migration-tools/modules/migration-tools-commons-tests/src/main/java/org/apache/ignite/migrationtools/tests/containers/MigrationToolsContainer.java

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,6 @@
3131

3232
/** Container running the migrtion tools. */
3333
public class MigrationToolsContainer implements Startable {
34-
public static final String DOCKER_IMAGE_NAME = "ai3-migration-tools:" + System.getProperty("migration-tools.docker.version", "latest");
35-
3634
public final GenericContainer container;
3735

3836
/**
@@ -41,7 +39,12 @@ public class MigrationToolsContainer implements Startable {
4139
* @param network Network.
4240
*/
4341
public MigrationToolsContainer(Network network) {
44-
this.container = new GenericContainer<>(DOCKER_IMAGE_NAME)
42+
String imageName = System.getProperty("migrationtools.cli.docker.image");
43+
if (imageName == null) {
44+
throw new IllegalArgumentException("'migrationtools.cli.docker.image' property must be defined");
45+
}
46+
47+
this.container = new GenericContainer<>(imageName)
4548
.withCreateContainerCmdModifier(cmd -> cmd.withEntrypoint("/bin/bash"))
4649
.withNetwork(network)
4750
.withCommand("-c", "sleep infinity")

migration-tools/packaging/cli/build.gradle

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,8 +150,10 @@ if (project.hasProperty('prepareRelease')) {
150150
}
151151
}
152152

153+
ext.docker_image_name = 'docker.io/ai3-migration-tools:' + project.version
154+
153155
docker {
154-
name 'ai3-migration-tools:' + project.version
156+
name project.docker_image_name
155157
dockerfile file('docker/Dockerfile')
156158
files tasks.distTar.outputs
157159
buildArgs(

migration-tools/tools/e2e-tests-framework/ai2-runner/build.gradle

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,10 @@ dependencies {
4242
runtimeOnly libs.junit5.platform.console
4343
}
4444

45+
ext.docker_image_name = 'docker.io/ai3-migration-tools/e2e-tests:' + project.version
46+
4547
docker {
46-
name 'ai3-migration-tools/e2e-tests:latest'
48+
name project.docker_image_name
4749
dockerfile file('docker/Dockerfile')
4850
files configurations.runtimeClasspath, tasks.jar.outputs
4951
copySpec.into("libs")

0 commit comments

Comments
 (0)