-
Notifications
You must be signed in to change notification settings - Fork 112
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'develop' into bugfix/s3-content-type
- Loading branch information
Showing
35 changed files
with
423 additions
and
108 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,30 +1,46 @@ | ||
name: CI | ||
on: [push, pull_request] | ||
on: | ||
push: | ||
branches: | ||
- develop | ||
- release/* | ||
pull_request: | ||
jobs: | ||
build: | ||
runs-on: ${{ matrix.os }} | ||
strategy: | ||
matrix: | ||
os: [ubuntu-latest, windows-latest] | ||
java: [jdk11, jdk18, graalvm] | ||
java: [jdk11, jdk17, jdk18, jdk21, graalvm] | ||
fail-fast: false | ||
steps: | ||
- name: Check out the repository | ||
uses: actions/checkout@v2 | ||
uses: actions/checkout@v4 | ||
- name: Test in Linux JDK 11 | ||
if: matrix.os == 'ubuntu-latest' && matrix.java == 'jdk11' | ||
run: docker compose -f docker/Linux-JDK11/docker-compose.yml up --build --exit-code-from cantaloupe | ||
- name: Test in Linux JDK 17 (LTS) | ||
if: matrix.os == 'ubuntu-latest' && matrix.java == 'jdk17' | ||
run: docker compose -f docker/Linux-JDK17/compose.yaml up --build --exit-code-from cantaloupe | ||
- name: Test in Linux JDK 18 | ||
if: matrix.os == 'ubuntu-latest' && matrix.java == 'jdk18' | ||
run: docker compose -f docker/Linux-JDK18/docker-compose.yml up --build --exit-code-from cantaloupe | ||
- name: Test in Linux JDK 21 (LTS) | ||
if: matrix.os == 'ubuntu-latest' && matrix.java == 'jdk21' | ||
run: docker compose -f docker/Linux-JDK21/compose.yaml up --build --exit-code-from cantaloupe | ||
- name: Test in Linux GraalVM | ||
if: matrix.os == 'ubuntu-latest' && matrix.java == 'graalvm' | ||
run: docker compose -f docker/Linux-GraalVM20/docker-compose.yml up --build --exit-code-from cantaloupe | ||
run: docker compose -f docker/Linux-GraalVM20/compose.yaml up --build --exit-code-from cantaloupe | ||
- name: Test in Windows JDK 11 | ||
if: matrix.os == 'windows-latest' && matrix.java == 'jdk11' | ||
run: docker compose -f docker/Windows-JDK11/docker-compose.yml up --build --exit-code-from cantaloupe | ||
- name: Test in Windows JDK 17 (LTS) | ||
if: matrix.os == 'windows-latest' && matrix.java == 'jdk17' | ||
run: docker compose -f docker/Windows-JDK17/compose.yaml up --build --exit-code-from cantaloupe | ||
- name: Test in Windows JDK 18 | ||
if: matrix.os == 'windows-latest' && matrix.java == 'jdk18' | ||
run: docker compose -f docker/Windows-JDK18/docker-compose.yml up --build --exit-code-from cantaloupe | ||
- name: Test in Windows JDK 21 (LTS) | ||
if: matrix.os == 'windows-latest' && matrix.java == 'jdk21' | ||
run: docker compose -f docker/Windows-JDK21/compose.yaml up --build --exit-code-from cantaloupe | ||
# TODO: Windows+GraalVM | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
4 changes: 2 additions & 2 deletions
4
docker/Linux-GraalVM20/docker-compose.yml → docker/Linux-GraalVM20/compose.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
FROM ubuntu:noble | ||
|
||
ARG DEBIAN_FRONTEND=noninteractive | ||
|
||
# Install various dependencies: | ||
# * ca-certificates is needed by wget | ||
# * ffmpeg is needed by FfmpegProcessor | ||
# * wget download stuffs in this dockerfile | ||
# * libopenjp2-tools is needed by OpenJpegProcessor | ||
# * All the rest is needed by GrokProcessor | ||
RUN apt-get update && apt-get install -y --no-install-recommends \ | ||
ca-certificates \ | ||
ffmpeg \ | ||
wget \ | ||
libopenjp2-tools \ | ||
liblcms2-dev \ | ||
libpng-dev \ | ||
libzstd-dev \ | ||
libtiff-dev \ | ||
libjpeg-dev \ | ||
zlib1g-dev \ | ||
libwebp-dev \ | ||
libimage-exiftool-perl \ | ||
libgrokj2k1 \ | ||
grokj2k-tools \ | ||
adduser \ | ||
openjdk-17-jdk \ | ||
maven \ | ||
&& rm -rf /var/lib/apt/lists/* | ||
|
||
# Install TurboJpegProcessor dependencies | ||
RUN mkdir -p /opt/libjpeg-turbo/lib | ||
COPY docker/image_files/libjpeg-turbo/lib64 /opt/libjpeg-turbo/lib | ||
|
||
# Install KakaduNativeProcessor dependencies | ||
COPY dist/deps/Linux-x86-64/lib/* /usr/lib/ | ||
|
||
# A non-root user is needed for some FilesystemSourceTest tests to work. | ||
ARG user=cantaloupe | ||
ARG home=/home/$user | ||
RUN adduser --home $home $user | ||
RUN chown -R $user $home | ||
USER $user | ||
WORKDIR $home | ||
|
||
# Install application dependencies | ||
COPY ./pom.xml pom.xml | ||
|
||
RUN echo "export JAVA_HOME=$(dirname $(dirname $(readlink -f $(which java))))" > ~/.bashrc | ||
RUN mvn --quiet dependency:resolve | ||
|
||
# Copy the code | ||
COPY --chown=cantaloupe docker/image_files/test.properties test.properties | ||
COPY --chown=cantaloupe ./src src | ||
|
||
ENTRYPOINT mvn --batch-mode test -Pfreedeps |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
# | ||
# N.B.: docker compose must be invoked from the project root directory: | ||
# | ||
# docker compose -f path/to/compose.yaml up --exit-code-from cantaloupe | ||
# | ||
services: | ||
cantaloupe: | ||
build: | ||
context: ../../ | ||
dockerfile: $PWD/docker/Linux-JDK17/Dockerfile | ||
minio: | ||
image: minio/minio | ||
environment: | ||
MINIO_ACCESS_KEY: MinioUser | ||
MINIO_SECRET_KEY: OpenSesame | ||
hostname: minio | ||
command: server /data | ||
redis: | ||
image: redis:alpine | ||
hostname: redis |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.