Skip to content

Commit

Permalink
Update WebUI dependencies (#155)
Browse files Browse the repository at this point in the history
* [patch] Update webui deps (liberty, icu4j, dojo, jackson)

* [patch] Update build option is now almalinux8/9 not alma8/9

* [patch] debuging of buildcontainerVersion

* [patch] new version of the buildcontainer will be 1.0.0.9

---------

Co-authored-by: Jon Levell <levell@uk.ibm.com>
  • Loading branch information
jonquark and Jon Levell committed Jan 17, 2024
1 parent 7f178e5 commit fed2c6b
Show file tree
Hide file tree
Showing 9 changed files with 503 additions and 104 deletions.
393 changes: 354 additions & 39 deletions Jenkinsfile

Large diffs are not rendered by default.

36 changes: 19 additions & 17 deletions README.md
Expand Up @@ -31,33 +31,35 @@ export USE_REAL_TRANSLATIONS=true
export SLESNORPMS=yes
export IMASERVER_BASE_DIR=$BROOT/rpmtree
export JAVA_HOME=<suitable Java 8 SDK e.g. /etc/alternatives/java_sdk>
export PATH=$JAVA_HOME/bin:$PATH
cd $SROOT/server_build
ant -f $SROOT/server_build/build.xml 2>&1 | tee /tmp/ant.log
```
The output (in the form of rpms and tar bundles) is put under `$BROOT/rpms`

# Dependencies
Building the default set of components from this repository requires the following to be downloaded
and placed into a directory (set the $DEP_HOME environment variable to point to this directory)

* openliberty-22.0.0.6.zip
* openliberty-23.0.0.12.zip
https://openliberty.io/downloads/
* jackson-annotations-2.13.3.jar
https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-annotations/2.13.3/
* jackson-core-2.13.3.jar
https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-core/2.13.3/
* jackson-databind-2.13.3.jar
https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-databind/2.13.3/
* jackson-jaxrs-base-2.13.3.jar
https://repo1.maven.org/maven2/com/fasterxml/jackson/jaxrs/jackson-jaxrs-base/2.13.3/
* jackson-jaxrs-json-provider-2.13.3.jar
https://repo1.maven.org/maven2/com/fasterxml/jackson/jaxrs/jackson-jaxrs-json-provider/2.13.3/
* jackson-module-jaxb-annotations-2.13.3.jar
https://repo1.maven.org/maven2/com/fasterxml/jackson/module/jackson-module-jaxb-annotations/2.13.3/
* icu4j-71_1.jar
https://github.com/unicode-org/icu/releases/tag/release-71-1
* dojo-release-1.17.2-src.zip
https://download.dojotoolkit.org/release-1.17.2/
* jackson-annotations-2.16.0.jar
https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-annotations/2.16.0/
* jackson-core-2.16.0.jar
https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-core/2.16.0/
* jackson-databind-2.16.0.jar
https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-databind/2.16.0/
* jackson-jaxrs-base-2.16.0.jar
https://repo1.maven.org/maven2/com/fasterxml/jackson/jaxrs/jackson-jaxrs-base/2.16.0/
* jackson-jaxrs-json-provider-2.16.0.jar
https://repo1.maven.org/maven2/com/fasterxml/jackson/jaxrs/jackson-jaxrs-json-provider/2.16.0/
* jackson-module-jaxb-annotations-2.16.0.jar
https://repo1.maven.org/maven2/com/fasterxml/jackson/module/jackson-module-jaxb-annotations/2.16.0/
* icu4j-74.1.jar
https://github.com/unicode-org/icu/releases/tag/release-74-1
* dojo-release-1.17.3-src.zip
https://download.dojotoolkit.org/release-1.17.3/
* gridx-1.3.9.zip
https://github.com/oria/gridx/releases
* d3-3.5.6.zip
Expand Down
18 changes: 9 additions & 9 deletions server_build/buildcontainer/Dockerfile.alma8
Expand Up @@ -24,16 +24,16 @@ RUN dnf -y update && \

#Get the dependencies we need that aren't packaged (JMS and java treated separately)
RUN wget https://github.com/d3/d3/releases/download/v3.5.6/d3.zip -O ${DEPS_HOME}/d3-3.5.6.zip && \
wget https://public.dhe.ibm.com/ibmdl/export/pub/software/openliberty/runtime/release/22.0.0.6/openliberty-22.0.0.6.zip -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-annotations/2.13.3/jackson-annotations-2.13.3.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-core/2.13.3/jackson-core-2.13.3.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-databind/2.13.3/jackson-databind-2.13.3.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/jaxrs/jackson-jaxrs-base/2.13.3/jackson-jaxrs-base-2.13.3.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/jaxrs/jackson-jaxrs-json-provider/2.13.3/jackson-jaxrs-json-provider-2.13.3.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/module/jackson-module-jaxb-annotations/2.13.3/jackson-module-jaxb-annotations-2.13.3.jar -P ${DEPS_HOME} && \
wget https://download.dojotoolkit.org/release-1.17.2/dojo-release-1.17.2-src.zip -O ${DEPS_HOME}/dojo-release-1.17.2-src.zip && \
wget https://public.dhe.ibm.com/ibmdl/export/pub/software/openliberty/runtime/release/23.0.0.12/openliberty-23.0.0.12.zip -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-annotations/2.16.0/jackson-annotations-2.16.0.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-core/2.16.0/jackson-core-2.16.0.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-databind/2.16.0/jackson-databind-2.16.0.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/jaxrs/jackson-jaxrs-base/2.16.0/jackson-jaxrs-base-2.16.0.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/jaxrs/jackson-jaxrs-json-provider/2.16.0/jackson-jaxrs-json-provider-2.16.0.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/module/jackson-module-jaxb-annotations/2.16.0/jackson-module-jaxb-annotations-2.16.0.jar -P ${DEPS_HOME} && \
wget https://download.dojotoolkit.org/release-1.17.3/dojo-release-1.17.3-src.zip -O ${DEPS_HOME}/dojo-release-1.17.3-src.zip && \
wget https://github.com/oria/gridx/archive/refs/tags/v1.3.9.zip -O ${DEPS_HOME}/gridx-1.3.9.zip && \
wget https://github.com/unicode-org/icu/releases/download/release-71-1/icu4j-71_1.jar -P ${DEPS_HOME}
wget https://github.com/unicode-org/icu/releases/download/release-74-1/icu4j-74.1.jar -P ${DEPS_HOME}

#Get the JMS jars (separate as need to consider whether these are right locations/jars to grab - consider fscontext.jar/providerutil.jar)
RUN wget https://repo1.maven.org/maven2/org/apache/geronimo/specs/geronimo-jms_1.1_spec/1.1.1/geronimo-jms_1.1_spec-1.1.1.jar -O ${DEPS_HOME}/jms.jar
40 changes: 40 additions & 0 deletions server_build/buildcontainer/Dockerfile.alma9
@@ -0,0 +1,40 @@
==== BASE ====

FROM quay.io/almalinux/almalinux:9 as builder

ENV DEPS_HOME ${HOME}/deps

RUN mkdir -p ${DEPS_HOME}

RUN dnf -y update && \
#Cunit comes from the crb repo (need to install plugins-core for the config manager)
dnf -y install dnf-plugins-core && dnf config-manager --set-enabled crb && \
# Install system tools and build dependencies required to build all releases of MessageGateway/MSProxy
dnf -y install --nobest gcc gcc-c++ make cmake3 CUnit CUnit-devel junit ant ant-apache-xalan2 ant-junit libxslt && \
# Install library dependencies (1/2)
dnf -y install openssl-devel curl-devel openldap-devel net-snmp-devel libicu-devel icu boost-devel && \
# Install library dependencies (1/2)
dnf -y install jansson jansson-devel pam-devel curl-devel && \
# Install some tools which developers find useful during basic testing
dnf -y install less wget vim-enhanced dos2unix bc gdb net-tools openssh-clients bzip2 unzip zip procps && \
dnf -y install man file which lsof strace python3-devel python3-pip nodejs npm valgrind nc nmap logrotate && \
# Needed to build rpms in container
dnf -y install rpm-build && \
# Needed for verifying python
pip3 install pylint requests

#Get the dependencies we need that aren't packaged (JMS and java treated separately)
RUN wget https://github.com/d3/d3/releases/download/v3.5.6/d3.zip -O ${DEPS_HOME}/d3-3.5.6.zip && \
wget https://public.dhe.ibm.com/ibmdl/export/pub/software/openliberty/runtime/release/23.0.0.12/openliberty-23.0.0.12.zip -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-annotations/2.16.0/jackson-annotations-2.16.0.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-core/2.16.0/jackson-core-2.16.0.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-databind/2.16.0/jackson-databind-2.16.0.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/jaxrs/jackson-jaxrs-base/2.16.0/jackson-jaxrs-base-2.16.0.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/jaxrs/jackson-jaxrs-json-provider/2.16.0/jackson-jaxrs-json-provider-2.16.0.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/module/jackson-module-jaxb-annotations/2.16.0/jackson-module-jaxb-annotations-2.16.0.jar -P ${DEPS_HOME} && \
wget https://download.dojotoolkit.org/release-1.17.3/dojo-release-1.17.3-src.zip -O ${DEPS_HOME}/dojo-release-1.17.3-src.zip && \
wget https://github.com/oria/gridx/archive/refs/tags/v1.3.9.zip -O ${DEPS_HOME}/gridx-1.3.9.zip && \
wget https://github.com/unicode-org/icu/releases/download/release-74-1/icu4j-74.1.jar -P ${DEPS_HOME}

#Get the JMS jars (separate as need to consider whether these are right locations/jars to grab - consider fscontext.jar/providerutil.jar)
RUN wget https://repo1.maven.org/maven2/org/apache/geronimo/specs/geronimo-jms_1.1_spec/1.1.1/geronimo-jms_1.1_spec-1.1.1.jar -O ${DEPS_HOME}/jms.jar
51 changes: 40 additions & 11 deletions server_build/buildcontainer/Dockerfile.centos7
Expand Up @@ -15,24 +15,53 @@ RUN yum --nogpgcheck -y install epel-release && \
yum -y install jansson jansson-devel pam-devel curl-devel && \
# Install some tools which developers find useful during basic testing
yum -y install less wget vim-enhanced dos2unix bc gdb net-tools openssh-clients sysvinit-tools bzip2 unzip zip && \
yum -y install man file which lsof strace python-devel python-pip nodejs npm valgrind nc nmap logrotate dsniff && \
yum -y install man file which lsof strace python-devel python-pip python3-devel nodejs npm valgrind nc nmap logrotate dsniff && \
# Temporarily installing cunit packages from DEPS_HOME while EPEL mirrors are down
yum -y install CUnit CUnit-devel && \
# Needed to build rpms in container
yum -y install rpm-build
yum -y install rpm-build && \
# Needed to build the proxy
yum -y install mongo-c-driver-devel && \
# Needed for verifying python
pip3 install pylint requests

#Get the dependencies we need that aren't packaged (JMS and java treated separately)
RUN wget https://github.com/d3/d3/releases/download/v3.5.6/d3.zip -O ${DEPS_HOME}/d3-3.5.6.zip && \
wget https://public.dhe.ibm.com/ibmdl/export/pub/software/openliberty/runtime/release/22.0.0.6/openliberty-22.0.0.6.zip -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-annotations/2.13.3/jackson-annotations-2.13.3.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-core/2.13.3/jackson-core-2.13.3.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-databind/2.13.3/jackson-databind-2.13.3.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/jaxrs/jackson-jaxrs-base/2.13.3/jackson-jaxrs-base-2.13.3.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/jaxrs/jackson-jaxrs-json-provider/2.13.3/jackson-jaxrs-json-provider-2.13.3.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/module/jackson-module-jaxb-annotations/2.13.3/jackson-module-jaxb-annotations-2.13.3.jar -P ${DEPS_HOME} && \
wget https://download.dojotoolkit.org/release-1.17.2/dojo-release-1.17.2-src.zip -O ${DEPS_HOME}/dojo-release-1.17.2-src.zip && \
wget https://public.dhe.ibm.com/ibmdl/export/pub/software/openliberty/runtime/release/23.0.0.12/openliberty-23.0.0.12.zip -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-annotations/2.16.0/jackson-annotations-2.16.0.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-core/2.16.0/jackson-core-2.16.0.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-databind/2.16.0/jackson-databind-2.16.0.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/jaxrs/jackson-jaxrs-base/2.16.0/jackson-jaxrs-base-2.16.0.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/jaxrs/jackson-jaxrs-json-provider/2.16.0/jackson-jaxrs-json-provider-2.16.0.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/module/jackson-module-jaxb-annotations/2.16.0/jackson-module-jaxb-annotations-2.16.0.jar -P ${DEPS_HOME} && \
wget https://download.dojotoolkit.org/release-1.17.3/dojo-release-1.17.3-src.zip -O ${DEPS_HOME}/dojo-release-1.17.3-src.zip && \
wget https://github.com/oria/gridx/archive/refs/tags/v1.3.9.zip -O ${DEPS_HOME}/gridx-1.3.9.zip && \
wget https://github.com/unicode-org/icu/releases/download/release-71-1/icu4j-71_1.jar -P ${DEPS_HOME}
wget https://github.com/unicode-org/icu/releases/download/release-74-1/icu4j-74.1.jar -P ${DEPS_HOME}

#Get the JMS jars (separate as need to consider whether these are right locations/jars to grab - consider fscontext.jar/providerutil.jar)
RUN wget https://repo1.maven.org/maven2/org/apache/geronimo/specs/geronimo-jms_1.1_spec/1.1.1/geronimo-jms_1.1_spec-1.1.1.jar -O ${DEPS_HOME}/jms.jar

#Get the operator-sdk that is required for building the operator images
RUN export ARCH=$(case $(uname -m) in x86_64) echo -n amd64 ;; aarch64) echo -n arm64 ;; *) echo -n $(uname -m) ;; esac) && \
export OS=$(uname | awk '{print tolower($0)}') && \
export OPERATOR_SDK_DL_URL=https://github.com/operator-framework/operator-sdk/releases/download/v1.22.0 && \
curl -LO ${OPERATOR_SDK_DL_URL}/operator-sdk_${OS}_${ARCH} && \
chmod +x operator-sdk_${OS}_${ARCH} && mv operator-sdk_${OS}_${ARCH} /usr/local/bin/operator-sdk

#Get dita which is required for building the documentation
RUN cd /usr/lib/ && \
wget https://github.com/dita-ot/dita-ot/releases/download/3.7.2/dita-ot-3.7.2.zip && \
unzip dita-ot-3.7.2.zip && \
rm dita-ot-3.7.2.zip && \
ln -s /usr/lib/dita-ot-3.7.2/bin/dita /usr/bin/dita

#Statsd is a little awkward to install, needed for building the proxy
RUN cd /deps && \
mkdir statsd && \
wget https://github.com/romanbsd/statsd-c-client/archive/refs/heads/master.zip && \
unzip master.zip && \
cd statsd-c-client-master && \
make && \
cp libstatsdclient.so /usr/lib64 && \
cp statsd-client.h /usr/include

28 changes: 15 additions & 13 deletions server_build/buildcontainer/Dockerfile.fedora
@@ -1,37 +1,39 @@

FROM quay.io/fedora/fedora:35-x86_64 as builder
FROM quay.io/fedora/fedora:39-x86_64 as builder

ENV DEPS_HOME ${HOME}/deps

RUN mkdir -p ${DEPS_HOME}

RUN dnf -y update && \
# Install system tools and build dependencies required to build all releases of MessageGateway/MSProxy
dnf -y install --nobest gcc gcc-c++ make cmake3 CUnit CUnit-devel junit ant ant-apache-xalan2 ant-junit ant-contrib libxslt && \
dnf -y install --nobest gcc gcc-c++ make cmake3 CUnit CUnit-devel junit ant ant-apache-xalan2 ant-junit libxslt && \
# Install library dependencies (1/2)
dnf -y install openssl-devel curl-devel openldap-devel net-snmp-devel libicu-devel icu boost-devel && \
# Install library dependencies (1/2)
dnf -y install jansson jansson-devel pam-devel curl-devel && \
# Install java compiler and runtime
dnf -y install java-1.8.0-openjdk-devel java-1.8.0-openjdk &&\
# Install some tools which developers find useful during basic testing
dnf -y install less wget vim-enhanced dos2unix bc gdb net-tools openssh-clients bzip2 unzip zip && \
dnf -y install less wget vim-enhanced dos2unix bc gdb net-tools openssh-clients bzip2 unzip zip procps && \
dnf -y install man file which lsof strace python3-devel python3-pip nodejs npm valgrind nc nmap logrotate && \
# Needed to build rpms in container
dnf -y install rpm-build
dnf -y install rpm-build && \
# Needed for verifying python
pip3 install pylint requests

#Get the dependencies we need that aren't packaged (JMS and java treated separately)
RUN wget https://github.com/d3/d3/releases/download/v3.5.6/d3.zip -O ${DEPS_HOME}/d3-3.5.6.zip && \
wget https://public.dhe.ibm.com/ibmdl/export/pub/software/openliberty/runtime/release/22.0.0.6/openliberty-22.0.0.6.zip -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-annotations/2.13.3/jackson-annotations-2.13.3.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-core/2.13.3/jackson-core-2.13.3.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-databind/2.13.3/jackson-databind-2.13.3.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/jaxrs/jackson-jaxrs-base/2.13.3/jackson-jaxrs-base-2.13.3.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/jaxrs/jackson-jaxrs-json-provider/2.13.3/jackson-jaxrs-json-provider-2.13.3.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/module/jackson-module-jaxb-annotations/2.13.3/jackson-module-jaxb-annotations-2.13.3.jar -P ${DEPS_HOME} && \
wget https://download.dojotoolkit.org/release-1.17.2/dojo-release-1.17.2-src.zip -O ${DEPS_HOME}/dojo-release-1.17.2-src.zip && \
wget https://public.dhe.ibm.com/ibmdl/export/pub/software/openliberty/runtime/release/23.0.0.12/openliberty-23.0.0.12.zip -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-annotations/2.16.0/jackson-annotations-2.16.0.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-core/2.16.0/jackson-core-2.16.0.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-databind/2.16.0/jackson-databind-2.16.0.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/jaxrs/jackson-jaxrs-base/2.16.0/jackson-jaxrs-base-2.16.0.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/jaxrs/jackson-jaxrs-json-provider/2.16.0/jackson-jaxrs-json-provider-2.16.0.jar -P ${DEPS_HOME} && \
wget https://repo1.maven.org/maven2/com/fasterxml/jackson/module/jackson-module-jaxb-annotations/2.16.0/jackson-module-jaxb-annotations-2.16.0.jar -P ${DEPS_HOME} && \
wget https://download.dojotoolkit.org/release-1.17.3/dojo-release-1.17.3-src.zip -O ${DEPS_HOME}/dojo-release-1.17.3-src.zip && \
wget https://github.com/oria/gridx/archive/refs/tags/v1.3.9.zip -O ${DEPS_HOME}/gridx-1.3.9.zip && \
wget https://github.com/unicode-org/icu/releases/download/release-71-1/icu4j-71_1.jar -P ${DEPS_HOME}
wget https://github.com/unicode-org/icu/releases/download/release-74-1/icu4j-74.1.jar -P ${DEPS_HOME}

#Get the JMS jars (separate as need to consider whether these are right locations/jars to grab - consider fscontext.jar/providerutil.jar)
RUN wget https://repo1.maven.org/maven2/org/apache/geronimo/specs/geronimo-jms_1.1_spec/1.1.1/geronimo-jms_1.1_spec-1.1.1.jar -O ${DEPS_HOME}/jms.jar

0 comments on commit fed2c6b

Please sign in to comment.