Enable LoaderIntegrationTests on aarch64

Closes gh-37654
This commit is contained in:
Phillip Webb 2023-09-28 21:46:48 -07:00
parent 0205b875a0
commit ed4ab667a1
2 changed files with 11 additions and 5 deletions

View File

@ -23,7 +23,6 @@ import java.util.List;
import java.util.function.Supplier;
import java.util.stream.Stream;
import org.junit.jupiter.api.condition.OS;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.MethodSource;
import org.testcontainers.containers.GenericContainer;
@ -34,7 +33,6 @@ import org.testcontainers.utility.DockerImageName;
import org.testcontainers.utility.MountableFile;
import org.springframework.boot.system.JavaVersion;
import org.springframework.boot.testsupport.junit.DisabledOnOs;
import org.springframework.boot.testsupport.testcontainers.DisabledIfDockerUnavailable;
import org.springframework.util.Assert;
@ -46,8 +44,6 @@ import static org.assertj.core.api.Assertions.assertThat;
* @author Phillip Webb
*/
@DisabledIfDockerUnavailable
@DisabledOnOs(os = { OS.LINUX, OS.MAC }, architecture = "aarch64",
disabledReason = "Not all docker images have ARM support")
class LoaderIntegrationTests {
private final ToStringConsumer output = new ToStringConsumer();
@ -124,8 +120,10 @@ class LoaderIntegrationTests {
}
static JavaRuntime oracleJdk17() {
String arch = System.getProperty("os.arch");
String dockerFile = ("aarch64".equals(arch)) ? "Dockerfile-aarch64" : "Dockerfile";
ImageFromDockerfile image = new ImageFromDockerfile("spring-boot-loader/oracle-jdk-17")
.withFileFromFile("Dockerfile", new File("src/intTest/resources/conf/oracle-jdk-17/Dockerfile"));
.withFileFromFile("Dockerfile", new File("src/intTest/resources/conf/oracle-jdk-17/" + dockerFile));
return new JavaRuntime("Oracle JDK 17", JavaVersion.SEVENTEEN, () -> new GenericContainer<>(image));
}

View File

@ -0,0 +1,8 @@
FROM ubuntu:jammy-20230624
RUN apt-get update && \
apt-get install -y software-properties-common curl && \
mkdir -p /opt/oraclejdk && \
cd /opt/oraclejdk && \
curl -L https://download.oracle.com/java/17/archive/jdk-17.0.8_linux-aarch64_bin.tar.gz | tar zx --strip-components=1
ENV JAVA_HOME /opt/oraclejdk
ENV PATH $JAVA_HOME/bin:$PATH