0
0
mirror of https://github.com/python-LimeReport/containers.git synced 2024-12-23 16:23:00 +03:00
This commit is contained in:
Maxim Slipenko 2024-06-10 10:46:52 +03:00
parent a7fbddcdad
commit 49a59eb5f2
3 changed files with 112 additions and 5 deletions

View File

@ -7,11 +7,11 @@ on:
jobs: jobs:
build-and-publish: build-and-publish:
runs-on: ubuntu-latest runs-on: [self-hosted, linux, ARM64]
strategy: strategy:
matrix: matrix:
python: [3.9] python: [3.9]
qt: [6.4.2, 6.5.3, 6.6.2] qt: [6.5.3]
image: [manylinux_2_31] image: [manylinux_2_31]
steps: steps:
- name: Checkout repository - name: Checkout repository
@ -31,6 +31,6 @@ jobs:
with: with:
context: . context: .
file: ${{ matrix.image }}/Dockerfile file: ${{ matrix.image }}/Dockerfile
platforms: linux/amd64,linux/arm64 platforms: linux/arm64
push: true push: true
tags: ghcr.io/python-limereport/${{ matrix.image }}:Py-${{ matrix.python }}-Qt-${{ matrix.qt }} tags: ghcr.io/python-limereport/${{ matrix.image }}:Py-${{ matrix.python }}-Qt-${{ matrix.qt }}

View File

@ -20,7 +20,7 @@ RUN yum -y update \
&& yum clean all \ && yum clean all \
&& rm -rf /var/cache/yum && rm -rf /var/cache/yum
ARG AQTINSTALL_VERSION=3.1.6 ARG AQTINSTALL_VERSION=3.1.15
ARG QT_VERSION=6.4.2 ARG QT_VERSION=6.4.2
RUN pipx install aqtinstall==${AQTINSTALL_VERSION} \ RUN pipx install aqtinstall==${AQTINSTALL_VERSION} \

View File

@ -21,7 +21,7 @@ ARG PYTHON_VERSION=3.9
COPY ./scripts/install_python.sh / COPY ./scripts/install_python.sh /
RUN /install_python.sh && rm -f /install_python.sh RUN /install_python.sh && rm -f /install_python.sh
ARG AQTINSTALL_VERSION=3.1.12 ARG AQTINSTALL_VERSION=3.1.15
RUN python3 -m pip install aqtinstall==${AQTINSTALL_VERSION} RUN python3 -m pip install aqtinstall==${AQTINSTALL_VERSION}
ENV PATH=/root/.local/bin:$PATH ENV PATH=/root/.local/bin:$PATH
@ -34,6 +34,113 @@ RUN aqt -c /aqt.cfg install-src --outputdir /opt/Qt-src linux ${QT_VERSION}
COPY ./qt-patches/ /qt-patches COPY ./qt-patches/ /qt-patches
RUN cd /opt/Qt-src/${QT_VERSION}/Src && /qt-patches/apply-patches.sh RUN cd /opt/Qt-src/${QT_VERSION}/Src && /qt-patches/apply-patches.sh
RUN apt-get update && \
DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
build-essential \
cmake \
ninja-build \
git \
perl \
libclang-dev \
libfontconfig1-dev \
libdbus-1-dev \
libfreetype6-dev \
libicu-dev \
libinput-dev \
libxkbcommon-dev \
libxkbcommon-x11-dev \
libsqlite3-dev \
libssl-dev \
libpng-dev \
libjpeg-dev \
libglib2.0-dev \
libpulse-dev \
libasound2-dev \
libegl1-mesa-dev \
libxcb1-dev \
libx11-dev \
libx11-xcb-dev \
libxext-dev \
libxfixes-dev \
libxi-dev \
libxrender-dev \
libxcb-cursor-dev \
libxcb-glx0-dev \
libxcb-keysyms1-dev \
libxcb-image0-dev \
libxcb-shm0-dev \
libxcb-icccm4-dev \
libxcb-sync-dev \
libxcb-xfixes0-dev \
libxcb-shape0-dev \
libxcb-randr0-dev \
libxcb-render-util0-dev \
libxcb-util-dev \
libxcb-xinerama0-dev \
libxcb-xkb-dev \
libdrm-dev \
libwayland-dev \
libxcomposite-dev \
libxcursor-dev \
libxdamage-dev \
libxrandr-dev \
libxtst-dev \
libxss-dev \
libglu1-mesa-dev \
mesa-common-dev \
libgl1-mesa-dev \
libgles2-mesa-dev \
libgl1-mesa-dri \
libgl-dev \
libegl-dev \
p7zip-full \
libgstreamer1.0-dev \
libgstreamer-plugins-base1.0-dev \
libgstreamer-plugins-good1.0-dev \
libgstreamer-plugins-bad1.0-dev \
libavcodec-dev \
libavformat-dev \
libavdevice-dev \
libavutil-dev \
libavfilter-dev \
libswscale-dev \
libpostproc-dev \
libswresample-dev \
libva-dev \
libva-drm2 \
zstd \
libpcre2-dev \
libdouble-conversion-dev \
libsystemd-dev \
libbrotli-dev \
libproxy-dev \
libgssapi-krb5-2 \
libatspi2.0-dev \
libgbm-dev \
libharfbuzz-dev \
libmd4c-dev \
libxcb1-dev \
libgtk-3-dev \
libcups2-dev \
default-libmysqlclient-dev \
libpq-dev \
libodbc1 \
firebird-dev \
lttng-tools \
libassimp-dev \
libvulkan-dev \
libpcsclite-dev \
libhunspell-dev \
&& rm -rf /var/lib/apt/lists/*
RUN mkdir -p /opt/Qt/${QT_VERSION} \
&& cd /opt/Qt-src/${QT_VERSION}/Src \
&& ./configure -release -opensource -confirm-license -skip qtwebengine -prefix /opt/Qt/${QT_VERSION} \
make -j$(nproc)
RUN cmake --build . --parallel $(nproc) || exit 1
RUN cmake --install . || exit 1
# TODO # TODO
# 1. fixes "test -x /opt/python/cp39-cp39/bin/python" # 1. fixes "test -x /opt/python/cp39-cp39/bin/python"
# 2. fixes UTILITY_PYTHON = "/opt/python/cp38-cp38/bin/python" # 2. fixes UTILITY_PYTHON = "/opt/python/cp38-cp38/bin/python"