Merge branch 'master' into ATS-0000_refactor_packages

# Conflicts:
#	alfresco-transform-imagemagick/alfresco-transform-imagemagick-centos7/scripts/build-rpms.sh
#	alfresco-transform-imagemagick/alfresco-transform-imagemagick-rockylinux8/scripts/build-rpms.sh
#	engines/aio/Dockerfile
#	engines/imagemagick/README.md
#	engines/imagemagick/scripts/build-rpms.sh
This commit is contained in:
alandavis
2022-08-02 12:03:13 +01:00
12 changed files with 44 additions and 37 deletions

View File

@@ -0,0 +1,16 @@
# How to create ImageMagick RPM packages for Rocky Linux 8
1. `cd` to this directory
2. Use Rocky Linux base image and execute the [build-rpms.sh](scripts/build-rpms.sh) script
```bash
docker run -it --rm -v `pwd`:/opt/alfresco/imagemagick alfresco/alfresco-base-java:jre11-rockylinux8-202207110835@sha256:01810e3e77d188f48ad6549b63cf1d34ce7d61ba9ca3fb03f0c24cc8f5c73429 /bin/bash /opt/alfresco/imagemagick/scripts/build-rpms.sh
```
> **Note:** If you want to know more details or need to upgrade the ImageMagick version please check the comments in the [build-rpms.sh](scripts/build-rpms.sh) file
3. RPMs will be created in the `rpms` directory
```bash
bash-3.2$ ls rpms
ImageMagick-7.0.10-59.x86_64.rockylinux8.rpm ImageMagick-libs-7.0.10-59.x86_64.rockylinux8.rpm
```

View File

@@ -0,0 +1,41 @@
#!/bin/bash
set -e
IMAGEMAGICK_VERSION=7.1.0-16
#Installing SRPM package. For future proof builds the SRPM package is uploaded to Alfresco's nexus repository.
rpm -i https://nexus.alfresco.com/nexus/service/local/repositories/thirdparty/content/org/imagemagick/imagemagick-distribution/$IMAGEMAGICK_VERSION/imagemagick-distribution-$IMAGEMAGICK_VERSION-src.rpm
#liblqr is not available on Rocky Linux 8. Removing it from the spec.
sed -i '/lqr/d' ~/rpmbuild/SPECS/ImageMagick.spec
#We need some libraries from the epel repo.
yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
#We are going to compile the imagemagick so we need development tools.
yum -y group install "Development Tools"
#We are building the imagemagick from the official SRPM package. It allows us to be as compatible with the official RPM packages as possible.
# Installing direct build time dependencies (excluding liblqr-1-devel)
yum install -y dnf-plugins-core
dnf config-manager --set-enabled powertools
yum -y install bzip2-devel freetype-devel libjpeg-devel libpng-devel libtiff-devel giflib-devel \
zlib-devel perl-devel perl-generators ghostscript-devel djvulibre-devel libwmf-devel jasper-devel \
libtool-ltdl-devel libX11-devel libXext-devel libXt-devel lcms2-devel libxml2-devel librsvg2-devel \
fftw-devel ilmbase-devel OpenEXR-devel libwebp-devel jbigkit-devel openjpeg2-devel graphviz-devel \
libraqm-devel LibRaw-devel
# Installing indirect dependencies
# ImageMagick tests requite non default fonts
yum groupinstall -y "fonts"
# ImageMagick spec requires ldconfig_scriptlets macro
yum -y install epel-rpm-macros
#Building binary RPM packages
rpmbuild -bb ~/rpmbuild/SPECS/ImageMagick.spec
#Copy RPMs to well known directory.
mkdir -p /opt/alfresco/imagemagick/rpms
cp ~/rpmbuild/RPMS/x86_64/ImageMagick-$IMAGEMAGICK_VERSION.x86_64.rpm /opt/alfresco/imagemagick/rpms/ImageMagick-$IMAGEMAGICK_VERSION.x86_64.rockylinux8.rpm
cp ~/rpmbuild/RPMS/x86_64/ImageMagick-libs-$IMAGEMAGICK_VERSION.x86_64.rpm /opt/alfresco/imagemagick/rpms/ImageMagick-libs-$IMAGEMAGICK_VERSION.x86_64.rockylinux8.rpm