Skip to content

Commit dbb9be0

Browse files
authored
[gcloud] Accept gcr.io/google.com/cloudsdktool/google-cloud-cli as a valid image (#6422)
Also, use the new image in tests with a new tag which provides `amd` and `arm` support. For backward compatibility, previous image `gcr.io/google.com/cloudsdktool/cloud-sdk` is still valid. Closes gh-6421
1 parent d243084 commit dbb9be0

File tree

8 files changed

+26
-10
lines changed

8 files changed

+26
-10
lines changed

modules/gcloud/src/main/java/org/testcontainers/containers/BigtableEmulatorContainer.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,10 @@
1414
public class BigtableEmulatorContainer extends GenericContainer<BigtableEmulatorContainer> {
1515

1616
private static final DockerImageName DEFAULT_IMAGE_NAME = DockerImageName.parse(
17+
"gcr.io/google.com/cloudsdktool/google-cloud-cli"
18+
);
19+
20+
private static final DockerImageName CLOUD_SDK_IMAGE_NAME = DockerImageName.parse(
1721
"gcr.io/google.com/cloudsdktool/cloud-sdk"
1822
);
1923

@@ -23,7 +27,7 @@ public class BigtableEmulatorContainer extends GenericContainer<BigtableEmulator
2327

2428
public BigtableEmulatorContainer(final DockerImageName dockerImageName) {
2529
super(dockerImageName);
26-
dockerImageName.assertCompatibleWith(DEFAULT_IMAGE_NAME);
30+
dockerImageName.assertCompatibleWith(DEFAULT_IMAGE_NAME, CLOUD_SDK_IMAGE_NAME);
2731

2832
withExposedPorts(PORT);
2933
setWaitStrategy(new LogMessageWaitStrategy().withRegEx("(?s).*running.*$"));

modules/gcloud/src/main/java/org/testcontainers/containers/DatastoreEmulatorContainer.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,10 @@
1313
public class DatastoreEmulatorContainer extends GenericContainer<DatastoreEmulatorContainer> {
1414

1515
private static final DockerImageName DEFAULT_IMAGE_NAME = DockerImageName.parse(
16+
"gcr.io/google.com/cloudsdktool/google-cloud-cli"
17+
);
18+
19+
private static final DockerImageName CLOUD_SDK_IMAGE_NAME = DockerImageName.parse(
1620
"gcr.io/google.com/cloudsdktool/cloud-sdk"
1721
);
1822

@@ -29,7 +33,7 @@ public DatastoreEmulatorContainer(final String image) {
2933

3034
public DatastoreEmulatorContainer(final DockerImageName dockerImageName) {
3135
super(dockerImageName);
32-
dockerImageName.assertCompatibleWith(DEFAULT_IMAGE_NAME);
36+
dockerImageName.assertCompatibleWith(DEFAULT_IMAGE_NAME, CLOUD_SDK_IMAGE_NAME);
3337

3438
withExposedPorts(HTTP_PORT);
3539
setWaitStrategy(Wait.forHttp("/").forStatusCode(200));

modules/gcloud/src/main/java/org/testcontainers/containers/FirestoreEmulatorContainer.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,10 @@
1313
public class FirestoreEmulatorContainer extends GenericContainer<FirestoreEmulatorContainer> {
1414

1515
private static final DockerImageName DEFAULT_IMAGE_NAME = DockerImageName.parse(
16+
"gcr.io/google.com/cloudsdktool/google-cloud-cli"
17+
);
18+
19+
private static final DockerImageName CLOUD_SDK_IMAGE_NAME = DockerImageName.parse(
1620
"gcr.io/google.com/cloudsdktool/cloud-sdk"
1721
);
1822

@@ -22,7 +26,7 @@ public class FirestoreEmulatorContainer extends GenericContainer<FirestoreEmulat
2226

2327
public FirestoreEmulatorContainer(final DockerImageName dockerImageName) {
2428
super(dockerImageName);
25-
dockerImageName.assertCompatibleWith(DEFAULT_IMAGE_NAME);
29+
dockerImageName.assertCompatibleWith(DEFAULT_IMAGE_NAME, CLOUD_SDK_IMAGE_NAME);
2630

2731
withExposedPorts(PORT);
2832
setWaitStrategy(new LogMessageWaitStrategy().withRegEx("(?s).*running.*$"));

modules/gcloud/src/main/java/org/testcontainers/containers/PubSubEmulatorContainer.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,10 @@
1313
public class PubSubEmulatorContainer extends GenericContainer<PubSubEmulatorContainer> {
1414

1515
private static final DockerImageName DEFAULT_IMAGE_NAME = DockerImageName.parse(
16+
"gcr.io/google.com/cloudsdktool/google-cloud-cli"
17+
);
18+
19+
private static final DockerImageName CLOUD_SDK_IMAGE_NAME = DockerImageName.parse(
1620
"gcr.io/google.com/cloudsdktool/cloud-sdk"
1721
);
1822

@@ -22,7 +26,7 @@ public class PubSubEmulatorContainer extends GenericContainer<PubSubEmulatorCont
2226

2327
public PubSubEmulatorContainer(final DockerImageName dockerImageName) {
2428
super(dockerImageName);
25-
dockerImageName.assertCompatibleWith(DEFAULT_IMAGE_NAME);
29+
dockerImageName.assertCompatibleWith(DEFAULT_IMAGE_NAME, CLOUD_SDK_IMAGE_NAME);
2630

2731
withExposedPorts(8085);
2832
setWaitStrategy(new LogMessageWaitStrategy().withRegEx("(?s).*started.*$"));

modules/gcloud/src/test/java/org/testcontainers/containers/BigtableEmulatorContainerTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ public class BigtableEmulatorContainerTest {
3636
@Rule
3737
// emulatorContainer {
3838
public BigtableEmulatorContainer emulator = new BigtableEmulatorContainer(
39-
DockerImageName.parse("gcr.io/google.com/cloudsdktool/cloud-sdk:367.0.0-emulators")
39+
DockerImageName.parse("gcr.io/google.com/cloudsdktool/google-cloud-cli:380.0.0-emulators")
4040
);
4141

4242
// }

modules/gcloud/src/test/java/org/testcontainers/containers/DatastoreEmulatorContainerTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ public class DatastoreEmulatorContainerTest {
1919
@Rule
2020
// creatingDatastoreEmulatorContainer {
2121
public DatastoreEmulatorContainer emulator = new DatastoreEmulatorContainer(
22-
DockerImageName.parse("gcr.io/google.com/cloudsdktool/cloud-sdk:367.0.0-emulators")
22+
DockerImageName.parse("gcr.io/google.com/cloudsdktool/google-cloud-cli:380.0.0-emulators")
2323
);
2424

2525
// }
@@ -49,7 +49,7 @@ public void testSimple() {
4949
public void testWithFlags() throws IOException, InterruptedException {
5050
try (
5151
DatastoreEmulatorContainer emulator = new DatastoreEmulatorContainer(
52-
"gcr.io/google.com/cloudsdktool/cloud-sdk:367.0.0-emulators"
52+
"gcr.io/google.com/cloudsdktool/google-cloud-cli:380.0.0-emulators"
5353
)
5454
.withFlags("--consistency 1.0")
5555
) {
@@ -64,7 +64,7 @@ public void testWithFlags() throws IOException, InterruptedException {
6464
public void testWithMultipleFlags() throws IOException, InterruptedException {
6565
try (
6666
DatastoreEmulatorContainer emulator = new DatastoreEmulatorContainer(
67-
"gcr.io/google.com/cloudsdktool/cloud-sdk:367.0.0-emulators"
67+
"gcr.io/google.com/cloudsdktool/google-cloud-cli:380.0.0-emulators"
6868
)
6969
.withFlags("--consistency 1.0 --data-dir /root/.config/test-gcloud")
7070
) {

modules/gcloud/src/test/java/org/testcontainers/containers/FirestoreEmulatorContainerTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ public class FirestoreEmulatorContainerTest {
2323
@Rule
2424
// emulatorContainer {
2525
public FirestoreEmulatorContainer emulator = new FirestoreEmulatorContainer(
26-
DockerImageName.parse("gcr.io/google.com/cloudsdktool/cloud-sdk:367.0.0-emulators")
26+
DockerImageName.parse("gcr.io/google.com/cloudsdktool/google-cloud-cli:380.0.0-emulators")
2727
);
2828

2929
// }

modules/gcloud/src/test/java/org/testcontainers/containers/PubSubEmulatorContainerTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ public class PubSubEmulatorContainerTest {
3737
@Rule
3838
// emulatorContainer {
3939
public PubSubEmulatorContainer emulator = new PubSubEmulatorContainer(
40-
DockerImageName.parse("gcr.io/google.com/cloudsdktool/cloud-sdk:367.0.0-emulators")
40+
DockerImageName.parse("gcr.io/google.com/cloudsdktool/google-cloud-cli:380.0.0-emulators")
4141
);
4242

4343
// }

0 commit comments

Comments
 (0)