Skip to content

Commit

Permalink
boost from centos in a better way
Browse files Browse the repository at this point in the history
  • Loading branch information
akostadinov committed Dec 20, 2024
1 parent db61f1e commit e7f4d86
Show file tree
Hide file tree
Showing 4 changed files with 14 additions and 54 deletions.
28 changes: 14 additions & 14 deletions Containerfile
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,18 @@ ENV SEARCHD_REF=de6e35e2e233a012c5a7ed60675d15620234fad3 \
BUILD_FLAGS="-DUSE_SYSLOG=0 -DWITH_GALERA=0 -DWITH_RE2=0 -DWITH_STEMMER=0 -DWITH_ICU_FORCE_STATIC=0 -DWITH_SSL=1 -DWITH_ZLIB=1 -DWITH_ODBC=0 -DWITH_EXPAT=0 -DWITH_ICONV=1 -DWITH_POSTGRESQL=0 -DWITH_MYSQL=0 -DBUILD_TESTING=0 -DDISTR=rhel9" \
DEPS_CLANG_RHEL9="llvm-toolset-16.0.6-4.el9" \
DEPS_GCC_UBI9="make automake gcc-toolset-13 gcc gcc-c++" \
DEPS_NON_UBI="boost-devel bison flex"
DEPS_NON_UBI="boost-devel bison flex" \
DEPS_NON_UBI_RUNTIME="boost-context boost-filesystem boost-system"

WORKDIR $BUILD_PATH

SHELL ["/bin/bash", "-x", "-o", "pipefail", "-c"]
# to use clang, adjust CC and CXX variables and dependencies
# hadolint ignore=DL3040
RUN dnf install -y --setopt=strict=True --setopt=tsflags=nodocs mysql cmake $DEPS_GCC_UBI9 $DEPS_NON_UBI openssl-devel zlib-devel libicu-devel systemd-units rpm-build git xz gcc-c++
RUN dnf install -y --setopt=strict=True --setopt=tsflags=nodocs mysql cmake $DEPS_GCC_UBI9 $DEPS_NON_UBI openssl-devel zlib-devel libicu-devel systemd-units rpm-build git 'dnf-command(download)'

# RUN curl -sSL https://github.com/llvm/llvm-project/releases/download/llvmorg-16.0.6/llvm-project-16.0.6.src.tar.xz -o llvm-project-16.0.6.src.tar.xz && \
# RUN dnf install -y --setopt=strict=True --setopt=tsflags=nodocs xz gcc-c++
# curl -sSL https://github.com/llvm/llvm-project/releases/download/llvmorg-16.0.6/llvm-project-16.0.6.src.tar.xz -o llvm-project-16.0.6.src.tar.xz && \
# tar xvfJ llvm-project-16.0.6.src.tar.xz && \
# cd llvm-project-16.0.6.src && \
# cmake -S llvm -B build -G "Unix Makefiles" -DLLVM_ENABLE_PROJECTS="clang;lld" -DCMAKE_BUILD_TYPE=MinSizeRel && \
Expand All @@ -41,6 +44,10 @@ WORKDIR /var/adm
USER adm
RUN rpmbuild -bb rpmbuild/SPECS/manticore-tzdata.spec

# Download boost RPMs for runtime
WORKDIR /tmp/boost_rpms
RUN dnf download $DEPS_NON_UBI_RUNTIME

# it is ok not to tag ubi image as it is stable enough
# hadolint ignore=DL3006
FROM registry.access.redhat.com/ubi9-minimal
Expand All @@ -60,23 +67,16 @@ LABEL org.opencontainers.image.authors="https://issues.redhat.com/browse/THREESC
ARG PORTA_IMAGE=quay.io/3scale/porta:nightly
COPY --from=builder /tmp/manticore_uselessly_very_long_path_to_prevent_rpm_build_issues/build/*.rpm /tmp/rpms/
COPY --from=builder /var/adm/rpmbuild/RPMS/noarch/manticore-tzdata-1.1-1.noarch.rpm /tmp/rpms/
COPY --from=builder /tmp/boost_rpms/ /tmp/boost_rpms/
COPY --from=$PORTA_IMAGE /opt/system/config/standalone.sphinx.conf "/etc/manticoresearch/manticore.conf"
ENV MANTICORE_RPMS="manticore-converter* manticore-common* manticore-server-core* manticore-server* manticore-tzdata-1.1-1.noarch.rpm"

# hadolint ignore=DL3040
RUN microdnf install -y --nodocs mysql openssl boost-context boost-filesystem zlib libicu

# install boost from centos as it is missing in ubi
COPY centos_repo/RPM-GPG-KEY-centosofficial /etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
COPY centos_repo/centos-appstream.repo /etc/yum.repos.d/
COPY centos_repo/vars/stream /etc/yum/vars/
COPY centos_repo/vars/stream /etc/dnf/vars/
# hadolint ignore=DL3040
RUN microdnf install -y --nodocs boost-context boost-filesystem
RUN microdnf install -y --nodocs mysql openssl zlib libicu

RUN cd /tmp/rpms && ls -l && \
rpm -iv --excludedocs $MANTICORE_RPMS && \
cd - && rm -rf /tmp/rpms && \
rpm -iv --excludedocs /tmp/boost_rpms/* $MANTICORE_RPMS && \
cd - && rm -rf /tmp/rpms /tmp/boost_rpms && \
microdnf clean all && \
# TODO: once in production, update porta to generate config with the correct path \
sed -i -e 's#/var/run/sphinx/#/var/run/manticore/#' /etc/manticoresearch/manticore.conf && \
Expand Down
30 changes: 0 additions & 30 deletions centos_repo/RPM-GPG-KEY-centosofficial

This file was deleted.

9 changes: 0 additions & 9 deletions centos_repo/centos-appstream.repo

This file was deleted.

1 change: 0 additions & 1 deletion centos_repo/vars/stream

This file was deleted.

0 comments on commit e7f4d86

Please sign in to comment.