From c80b96671d5dbcd978c247da82e292f00d5d6c8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wojtek=20=C5=9Awi=C4=99to=C5=84?= Date: Mon, 7 Aug 2023 12:11:48 +0200 Subject: [PATCH] Fix/acs 5039 libreoffice home arm64 (#843) * ACS-5039 - fix libreoffice installation and set LIBREOFFICE_HOME for arm64 - aio * ACS-5039 - fix libreoffice installation and set LIBREOFFICE_HOME for arm64 - libreoffice * ACS-5039 - Libreoffice home set by script * ACS-5039 - Libreoffice home set by docker-entry point script * ACS-5039 - Added EOL --- engines/aio/Dockerfile | 8 +++++--- engines/aio/docker-entrypoint.sh | 9 +++++++++ engines/libreoffice/Dockerfile | 8 +++++--- engines/libreoffice/docker-entrypoint.sh | 9 +++++++++ 4 files changed, 28 insertions(+), 6 deletions(-) create mode 100755 engines/aio/docker-entrypoint.sh create mode 100755 engines/libreoffice/docker-entrypoint.sh diff --git a/engines/aio/Dockerfile b/engines/aio/Dockerfile index 4ecab03e..88f076ef 100644 --- a/engines/aio/Dockerfile +++ b/engines/aio/Dockerfile @@ -17,7 +17,7 @@ ENV IMAGEMAGICK_DEP_RPM_URL=https://dl.fedoraproject.org/pub/epel/epel-release-l ARG LIBREOFFICE_VERSION=7.2.5 ENV LIBREOFFICE_RPM_URL=https://nexus.alfresco.com/nexus/service/local/repositories/thirdparty/content/org/libreoffice/libreoffice-dist/${LIBREOFFICE_VERSION}/libreoffice-dist-${LIBREOFFICE_VERSION}-linux.gz -ENV LIBREOFFICE_ARM64_RPM_URL=https://dl.rockylinux.org/pub/rocky/8.8/devel/aarch64/os/Packages/l/libreoffice-core-6.4.7.2-13.el8.aarch64.rpm +ENV LIBREOFFICE_ARM64_RPM_URL=https://dl.rockylinux.org/pub/rocky/8/Devel/aarch64/os/Packages/l/libreoffice-6.4.7.2-13.el8.aarch64.rpm ENV ALFRESCO_PDF_RENDERER_LIB_RPM_URL=https://nexus.alfresco.com/nexus/service/local/repositories/releases/content/org/alfresco/alfresco-pdf-renderer/1.1/alfresco-pdf-renderer-1.1-linux.tgz @@ -48,7 +48,7 @@ RUN ln /usr/bin/${env.project_artifactId}-${env.project_version}.jar /usr/bin/${ yum localinstall -y LibreOffice*/RPMS/*.rpm && \ rm -rf libreoffice-dist-*linux.gz LibreOffice_*_Linux_x86-64_rpm; \ else \ - yum install -y $LIBREOFFICE_ARM64_RPM_URL && \ + dnf --enablerepo=devel install -y $LIBREOFFICE_ARM64_RPM_URL && \ update-alternatives --set java java-17-openjdk.aarch64; \ fi && \ curl -s -S $ALFRESCO_PDF_RENDERER_LIB_RPM_URL -o alfresco-pdf-renderer-linux.tgz && \ @@ -79,4 +79,6 @@ EXPOSE 8090 USER ${AIOUSERNAME} -ENTRYPOINT java $JAVA_OPTS -jar /usr/bin/${env.project_artifactId}.jar +# Copy the script to set LIBREOFFICE_HOME +COPY docker-entrypoint.sh /docker-entrypoint.sh +ENTRYPOINT ["/docker-entrypoint.sh", "${env.project_artifactId}"] diff --git a/engines/aio/docker-entrypoint.sh b/engines/aio/docker-entrypoint.sh new file mode 100755 index 00000000..0dde9a9f --- /dev/null +++ b/engines/aio/docker-entrypoint.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +# Check if the architecture is ARM64 (aarch64) +if [[ "$(uname -m)" != "x86_64" ]]; then + export LIBREOFFICE_HOME=${LIBREOFFICE_HOME:=/usr/lib64/libreoffice} +fi + +# Run the Alfresco transformation service JAR file with the specified Java options +exec java $JAVA_OPTS -jar /usr/bin/${1}.jar "$@" diff --git a/engines/libreoffice/Dockerfile b/engines/libreoffice/Dockerfile index 74c4ec97..570424aa 100644 --- a/engines/libreoffice/Dockerfile +++ b/engines/libreoffice/Dockerfile @@ -7,7 +7,7 @@ FROM alfresco/alfresco-base-java:jre17-rockylinux8-202306121108 ARG LIBREOFFICE_VERSION=7.2.5 ENV LIBREOFFICE_RPM_URL=https://nexus.alfresco.com/nexus/service/local/repositories/thirdparty/content/org/libreoffice/libreoffice-dist/${LIBREOFFICE_VERSION}/libreoffice-dist-${LIBREOFFICE_VERSION}-linux.gz -ENV LIBREOFFICE_ARM64_RPM_URL=https://dl.rockylinux.org/pub/rocky/8.8/devel/aarch64/os/Packages/l/libreoffice-core-6.4.7.2-13.el8.aarch64.rpm +ENV LIBREOFFICE_ARM64_RPM_URL=https://dl.rockylinux.org/pub/rocky/8/Devel/aarch64/os/Packages/l/libreoffice-6.4.7.2-13.el8.aarch64.rpm ENV JAVA_OPTS="" # Set default user information @@ -28,7 +28,7 @@ RUN ln /${env.project_artifactId}-${env.project_version}.jar /usr/bin/${env.proj yum localinstall -y LibreOffice*/RPMS/*.rpm && \ rm -rf libreoffice-dist-*linux.gz LibreOffice_*_Linux_x86-64_rpm; \ else \ - yum install -y $LIBREOFFICE_ARM64_RPM_URL && \ + dnf --enablerepo=devel install -y $LIBREOFFICE_ARM64_RPM_URL && \ update-alternatives --set java java-17-openjdk.aarch64; \ fi && \ yum clean all @@ -46,4 +46,6 @@ EXPOSE 8090 USER ${LIBREUSERNAME} -ENTRYPOINT java $JAVA_OPTS -jar /usr/bin/${env.project_artifactId}.jar +# Copy the script to set LIBREOFFICE_HOME +COPY docker-entrypoint.sh /docker-entrypoint.sh +ENTRYPOINT ["/docker-entrypoint.sh", "${env.project_artifactId}"] diff --git a/engines/libreoffice/docker-entrypoint.sh b/engines/libreoffice/docker-entrypoint.sh new file mode 100755 index 00000000..0dde9a9f --- /dev/null +++ b/engines/libreoffice/docker-entrypoint.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +# Check if the architecture is ARM64 (aarch64) +if [[ "$(uname -m)" != "x86_64" ]]; then + export LIBREOFFICE_HOME=${LIBREOFFICE_HOME:=/usr/lib64/libreoffice} +fi + +# Run the Alfresco transformation service JAR file with the specified Java options +exec java $JAVA_OPTS -jar /usr/bin/${1}.jar "$@"