Skip to content

Commit b0b55b7

Browse files
committed
[minor] add grok processor to cantaloupe
1 parent 2ab1508 commit b0b55b7

File tree

4 files changed

+80
-2
lines changed

4 files changed

+80
-2
lines changed

cantaloupe/Dockerfile

Lines changed: 67 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,22 @@ ARG LIBJPEG_TURBO_VERSION=2.1.5.1
1212
ARG LIBJPEG_TURBO_URL="https://github.com/libjpeg-turbo/libjpeg-turbo/archive/refs/tags/${LIBJPEG_TURBO_VERSION}.zip"
1313
ARG LIBJPEG_TURBO_SHA256="a9e670ea30064f36d5a20481c1f33eedf80b7e76c6e3f75c7e7189b200a7a216"
1414

15+
# renovate: datasource=github-releases depName=cli11 packageName=CLIUtils/CLI11
16+
ARG CLI11_VERSION=2.5.0
17+
ARG CLI11_URL="https://github.com/CLIUtils/CLI11/archive/refs/tags/v${CLI11_VERSION}.zip"
18+
ARG CLI11_SHA256="887270cae374a0b9e22b39647f9fc4bc742587fb26d6a221da2d2bbcf3109b0b"
19+
20+
# renovate: datasource=github-releases depName=grok packageName=GrokImageCompression/grok
21+
ARG GROK_VERSION=14.3.0
22+
ARG GROK_URL="https://github.com/GrokImageCompression/grok/archive/refs/tags/v${GROK_VERSION}.zip"
23+
ARG GROK_SHA256="db77c715d2c5b3722384f14974fb617770b7bea29ace1016ab8b8be33dd7a45b"
24+
25+
1526
EXPOSE 8182
1627

1728
WORKDIR /opt/cantaloupe
1829

30+
1931
# Note: Kakadu is not fully free and cannot be used for commercial purposes,
2032
# without purchasing the appropriate license.
2133
# As such the binaries are also not included here, although this image can be extended
@@ -63,6 +75,60 @@ RUN --mount=type=cache,id=cantaloupe-apk-${TARGETARCH},sharing=locked,target=/va
6375
create-service-user.sh --name cantaloupe --group jwt /data /opt/cantaloupe/logs && \
6476
cleanup.sh
6577

78+
79+
RUN apk add --no-cache \
80+
gcc \
81+
g++ \
82+
cmake \
83+
make \
84+
exiftool \
85+
lcms2-dev \
86+
libjpeg-turbo \
87+
libpng-dev \
88+
zstd-dev \
89+
tiff-dev \
90+
jpeg-dev \
91+
zlib-dev \
92+
libwebp-dev \
93+
valgrind \
94+
&& download.sh \
95+
--url "${CLI11_URL}" \
96+
--sha256 "${CLI11_SHA256}" \
97+
--dest "/opt/cli11" \
98+
--strip \
99+
&& mkdir /opt/cli11/build \
100+
&& cd /opt/cli11/build \
101+
&& cmake .. \
102+
&& make \
103+
&& make install \
104+
&& cd /opt/cantaloupe \
105+
&& rm -rf /opt/cli11
106+
107+
RUN download.sh \
108+
--url "${GROK_URL}" \
109+
--sha256 "${GROK_SHA256}" \
110+
--dest "/opt/grok" \
111+
--strip \
112+
&& cd /opt/grok \
113+
&& cmake -DBUILD_TESTING=OFF . \
114+
&& make install \
115+
&& cd /opt/cantaloupe \
116+
&& rm -rf /opt/grok \
117+
&& apk del \
118+
gcc \
119+
g++ \
120+
cmake \
121+
make \
122+
exiftool \
123+
lcms2-dev \
124+
libjpeg-turbo \
125+
libpng-dev \
126+
zstd-dev \
127+
tiff-dev \
128+
jpeg-dev \
129+
zlib-dev \
130+
libwebp-dev \
131+
valgrind
66132
ENV \
67133
CANTALOUPE_AZURESTORAGECACHE_ACCOUNT_KEY= \
68134
CANTALOUPE_AZURESTORAGECACHE_ACCOUNT_NAME= \
@@ -245,7 +311,7 @@ ENV \
245311
CANTALOUPE_PROCESSOR_MANUALSELECTIONSTRATEGY_FALLBACK="Java2dProcessor" \
246312
CANTALOUPE_PROCESSOR_MANUALSELECTIONSTRATEGY_FLV="FfmpegProcessor" \
247313
CANTALOUPE_PROCESSOR_MANUALSELECTIONSTRATEGY_GIF="Java2dProcessor" \
248-
CANTALOUPE_PROCESSOR_MANUALSELECTIONSTRATEGY_JP2="OpenJpegProcessor" \
314+
CANTALOUPE_PROCESSOR_MANUALSELECTIONSTRATEGY_JP2="GrokProcessor" \
249315
CANTALOUPE_PROCESSOR_MANUALSELECTIONSTRATEGY_JPG="TurboJpegProcessor" \
250316
CANTALOUPE_PROCESSOR_MANUALSELECTIONSTRATEGY_MOV="FfmpegProcessor" \
251317
CANTALOUPE_PROCESSOR_MANUALSELECTIONSTRATEGY_MP4="FfmpegProcessor" \

cantaloupe/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,7 @@ additional settings, volumes, ports, etc.
210210
| CANTALOUPE_PROCESSOR_MANUALSELECTIONSTRATEGY_FALLBACK | "Java2dProcessor" |
211211
| CANTALOUPE_PROCESSOR_MANUALSELECTIONSTRATEGY_FLV | "FfmpegProcessor" |
212212
| CANTALOUPE_PROCESSOR_MANUALSELECTIONSTRATEGY_GIF | "Java2dProcessor" |
213-
| CANTALOUPE_PROCESSOR_MANUALSELECTIONSTRATEGY_JP2 | "OpenJpegProcessor" |
213+
| CANTALOUPE_PROCESSOR_MANUALSELECTIONSTRATEGY_JP2 | "GrokProcessor" |
214214
| CANTALOUPE_PROCESSOR_MANUALSELECTIONSTRATEGY_JPG | "TurboJpegProcessor" |
215215
| CANTALOUPE_PROCESSOR_MANUALSELECTIONSTRATEGY_MOV | "FfmpegProcessor" |
216216
| CANTALOUPE_PROCESSOR_MANUALSELECTIONSTRATEGY_MP4 | "FfmpegProcessor" |

ci/update-sha.sh

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,16 @@ elif [ "$DEP" = "cantaloupe" ]; then
104104
DOCKERFILES=("cantaloupe/Dockerfile")
105105
README="cantaloupe/README.md"
106106

107+
elif [ "$DEP" = "grok" ]; then
108+
URL="https://github.com/GrokImageCompression/grok/archive/refs/tags/v${NEW_VERSION}.zip"
109+
ARG="GROK_SHA256"
110+
DOCKERFILES=("cantaloupe/Dockerfile")
111+
112+
elif [ "$DEP" = "cli11" ]; then
113+
URL="https://github.com/CLIUtils/CLI11/archive/refs/tags/v${NEW_VERSION}.zip"
114+
ARG="CLI11_SHA256"
115+
DOCKERFILES=("cantaloupe/Dockerfile")
116+
107117
elif [ "$DEP" = "fits-servlet" ]; then
108118
URL="https://github.com/harvard-lts/FITSservlet/releases/download/${NEW_VERSION}/fits-service-${NEW_VERSION}.war"
109119
ARG="FITSSERVLET_SHA256"

renovate.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,12 +86,14 @@
8686
"apache-solr",
8787
"apache-tomcat",
8888
"cantaloupe",
89+
"cli11",
8990
"custom-composer",
9091
"fcrepo",
9192
"fcrepo-import-export",
9293
"fcrepo-upgrade-utils",
9394
"fits",
9495
"fits-servlet",
96+
"grok",
9597
"handle",
9698
"jdbc-mysql",
9799
"jdbc-postgres",

0 commit comments

Comments
 (0)