Adds dockerfile variable to configure air-gapped hosting server as replacement for github.com

This commit is contained in:
torsten committed 2026-11-09 12:12:43 +00:00
1 parent 7373cb8d73
commit 7905b3c196
4 files changed
+65 -53

No files matched your search

+16 -13
View File
@@ -55,23 +55,26 @@ RUN curl -fsSL http://${RME_ADMINSRV}/rme/deb_and_rpm_signage_key.pub --output /
ARG GTEST_VERSION=1.15.2 ARG GTEST_VERSION=1.15.2
# Air-gapped Harbor registry URL
ARG HARBOR_URL=https://internal-repo.sl.defence-elec.de
# Install build dependencies # Install build dependencies
RUN apt-get update && apt-get install -y --no-install-recommends \ RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential cmake git \ build-essential cmake curl \
&& rm -rf /var/lib/apt/lists/* && rm -rf /var/lib/apt/lists/*
# Clone and build GoogleTest # Download and build GoogleTest from air-gapped Harbor registry
RUN git clone --depth 1 --branch v${GTEST_VERSION} \ RUN curl -L -o /tmp/googletest-${GTEST_VERSION}.tar.gz ${HARBOR_URL}/googletest-${GTEST_VERSION}.tar.gz && \
https://github.com/google/googletest.git /tmp/googletest \ tar -xzf /tmp/googletest-${GTEST_VERSION}.tar.gz -C /tmp && \
&& cd /tmp/googletest \ cd /tmp/googletest-${GTEST_VERSION} && \
&& mkdir build && cd build \ mkdir build && cd build && \
&& cmake -DCMAKE_BUILD_TYPE=Release \ cmake -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr/local \ -DCMAKE_INSTALL_PREFIX=/usr/local \
-DBUILD_SHARED_LIBS=ON \ -DBUILD_SHARED_LIBS=ON \
.. \ .. && \
&& cmake --build . -j$(nproc) \ cmake --build . -j$(nproc) && \
&& cmake --install . \ cmake --install . && \
&& rm -rf /tmp/googletest rm -rf /tmp/googletest-${GTEST_VERSION}.tar.gz /tmp/googletest-${GTEST_VERSION}
# Update library cache # Update library cache
RUN ldconfig RUN ldconfig
+17 -14
View File
@@ -56,26 +56,29 @@ RUN curl -fsSL http://${RME_ADMINSRV}/rme/deb_and_rpm_signage_key.pub --output /
ARG QT_VERSION=6.10.2 ARG QT_VERSION=6.10.2
ARG GRANTLEE_VERSION=5.3.1 ARG GRANTLEE_VERSION=5.3.1
# Air-gapped Harbor registry URL
ARG HARBOR_URL=https://internal-repo.sl.defence-elec.de
# Install build dependencies # Install build dependencies
RUN apt-get update && apt-get install -y --no-install-recommends \ RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential cmake git \ build-essential cmake curl \
libqt6core6 libqt6gui6 libqt6widgets6 \ libqt6core6 libqt6gui6 libqt6widgets6 \
qt6-base-dev \ qt6-base-dev \
&& rm -rf /var/lib/apt/lists/* && rm -rf /var/lib/apt/lists/*
# Clone and build Grantlee # Download and build Grantlee from air-gapped Harbor registry
RUN git clone --depth 1 --branch ${GRANTLEE_VERSION} \ RUN curl -L -o /tmp/grantlee-${GRANTLEE_VERSION}.tar.gz ${HARBOR_URL}/grantlee-${GRANTLEE_VERSION}.tar.gz && \
https://github.com/steveire/grantlee.git /tmp/grantlee \ tar -xzf /tmp/grantlee-${GRANTLEE_VERSION}.tar.gz -C /tmp && \
&& cd /tmp/grantlee \ cd /tmp/grantlee-${GRANTLEE_VERSION} && \
&& mkdir build && cd build \ mkdir build && cd build && \
&& cmake -DCMAKE_BUILD_TYPE=Release \ cmake -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr/local \ -DCMAKE_INSTALL_PREFIX=/usr/local \
-DCMAKE_PREFIX_PATH=/opt/Qt/${QT_VERSION}/gcc_64 \ -DCMAKE_PREFIX_PATH=/opt/Qt/${QT_VERSION}/gcc_64 \
-DGRANTLEE_BUILD_WITH_QT6=ON \ -DGRANTLEE_BUILD_WITH_QT6=ON \
.. \ .. && \
&& cmake --build . -j$(nproc) \ cmake --build . -j$(nproc) && \
&& cmake --install . \ cmake --install . && \
&& rm -rf /tmp/grantlee rm -rf /tmp/grantlee-${GRANTLEE_VERSION}.tar.gz /tmp/grantlee-${GRANTLEE_VERSION}
# Update library cache # Update library cache
RUN ldconfig RUN ldconfig
+16 -13
View File
@@ -56,25 +56,28 @@ RUN curl -fsSL http://${RME_ADMINSRV}/rme/deb_and_rpm_signage_key.asc --output /
ARG QT_VERSION=6.10.2 ARG QT_VERSION=6.10.2
ARG KDREPORTS_VERSION=2.3.0 ARG KDREPORTS_VERSION=2.3.0
# Air-gapped Harbor registry URL
ARG HARBOR_URL=https://internal-repo.sl.defence-elec.de
# Install build dependencies # Install build dependencies
RUN apt-get update && apt-get install -y --no-install-recommends \ RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential cmake git \ build-essential cmake curl \
libqt6core6 libqt6gui6 libqt6widgets6 libqt6xml6 \ libqt6core6 libqt6gui6 libqt6widgets6 libqt6xml6 \
qt6-base-dev \ qt6-base-dev \
&& rm -rf /var/lib/apt/lists/* && rm -rf /var/lib/apt/lists/*
# Clone and build KDReports # Download and build KDReports from air-gapped Harbor registry
RUN git clone --depth 1 --branch kdreports-${KDREPORTS_VERSION} \ RUN curl -L -o /tmp/KDReports-2.3.0.tar.gz ${HARBOR_URL}/KDReports-2.3.0.tar.gz && \
https://github.com/KDAB/KDReports.git /tmp/KDReports \ tar -xzf /tmp/KDReports-2.3.0.tar.gz -C /tmp && \
&& cd /tmp/KDReports \ cd /tmp/KDReports && \
&& mkdir build && cd build \ mkdir build && cd build && \
&& cmake -DCMAKE_BUILD_TYPE=Release \ cmake -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr/local \ -DCMAKE_INSTALL_PREFIX=/usr/local \
-DCMAKE_PREFIX_PATH=/opt/Qt/${QT_VERSION}/gcc_64 \ -DCMAKE_PREFIX_PATH=/opt/Qt/${QT_VERSION}/gcc_64 \
-DKDReports_QT6=ON .. \ -DKDReports_QT6=ON .. && \
&& cmake --build . -j$(nproc) \ cmake --build . -j$(nproc) && \
&& cmake --install . \ cmake --install . && \
&& rm -rf /tmp/KDReports rm -rf /tmp/KDReports-2.3.0.tar.gz /tmp/KDReports
# Create header alias for legacy includes # Create header alias for legacy includes
RUN ln -sfn /usr/local/include/KDReports-qt6 /usr/local/include/KDReports RUN ln -sfn /usr/local/include/KDReports-qt6 /usr/local/include/KDReports
+16 -13
View File
@@ -56,25 +56,28 @@ RUN curl -fsSL http://${RME_ADMINSRV}/rme/deb_and_rpm_signage_key.pub --output /
ARG QT_VERSION=6.10.2 ARG QT_VERSION=6.10.2
ARG LOG4QT_VERSION=2.0.0 ARG LOG4QT_VERSION=2.0.0
# Air-gapped Harbor registry URL
ARG HARBOR_URL=https://internal-repo.sl.defence-elec.de
# Install build dependencies # Install build dependencies
RUN apt-get update && apt-get install -y --no-install-recommends \ RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential cmake git \ build-essential cmake curl \
libqt6core6 libqt6gui6 libqt6widgets6 \ libqt6core6 libqt6gui6 libqt6widgets6 \
qt6-base-dev \ qt6-base-dev \
&& rm -rf /var/lib/apt/lists/* && rm -rf /var/lib/apt/lists/*
# Clone and build Log4Qt # Download and build Log4Qt from air-gapped Harbor registry
RUN git clone --depth 1 --branch v${LOG4QT_VERSION} \ RUN curl -L -o /tmp/Log4Qt-2.0.0.tar.gz ${HARBOR_URL}/Log4Qt-2.0.0.tar.gz && \
https://github.com/MeanEYE/Log4Qt.git /tmp/Log4Qt \ tar -xzf /tmp/Log4Qt-2.0.0.tar.gz -C /tmp && \
&& cd /tmp/Log4Qt \ cd /tmp/Log4Qt && \
&& mkdir build && cd build \ mkdir build && cd build && \
&& cmake -DCMAKE_BUILD_TYPE=Release \ cmake -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr/local \ -DCMAKE_INSTALL_PREFIX=/usr/local \
-DCMAKE_PREFIX_PATH=/opt/Qt/${QT_VERSION}/gcc_64 \ -DCMAKE_PREFIX_PATH=/opt/Qt/${QT_VERSION}/gcc_64 \
.. \ .. && \
&& cmake --build . -j$(nproc) \ cmake --build . -j$(nproc) && \
&& cmake --install . \ cmake --install . && \
&& rm -rf /tmp/Log4Qt rm -rf /tmp/Log4Qt-2.0.0.tar.gz /tmp/Log4Qt
# Update library cache # Update library cache
RUN ldconfig RUN ldconfig