minor change #1293
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Build | |
| on: | |
| push: | |
| paths-ignore: | |
| - ".github/**" | |
| - ".gitignore" | |
| - ".gitattributes" | |
| - "**.md" | |
| - "LICENSE" | |
| pull_request: | |
| paths-ignore: | |
| - ".github/**" | |
| - ".gitignore" | |
| - ".gitattributes" | |
| - "**.md" | |
| - "LICENSE" | |
| workflow_dispatch: | |
| env: | |
| CONTAINER_COMMAND: "podman run | |
| --platform $PLATFORM | |
| --rm | |
| --security-opt seccomp=unconfined | |
| --volume $PWD:/mnt | |
| --workdir /mnt | |
| $IMAGE" | |
| jobs: | |
| windows: | |
| name: Windows MSYS2 | |
| if: false | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| msystem: [MINGW64, UCRT64, CLANG64] | |
| runs-on: windows-latest | |
| defaults: | |
| run: | |
| shell: msys2 {0} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Setup | |
| uses: msys2/setup-msys2@v2 | |
| with: | |
| msystem: ${{ matrix.msystem }} | |
| update: true | |
| pacboy: | | |
| cc:p | |
| make:p | |
| qt5-static:p | |
| cmake:p | |
| 7zip:p | |
| install: | | |
| mingw-w64-i686-nsis | |
| git | |
| - name: Download MinGW toolchain | |
| run: | | |
| mkdir -p assets | |
| curl -L https://github.com/redpanda-cpp/toolchain-win32-mingw-xp/releases/download/11.4.0-r0/mingw32-11.4.0-r0.7z -o assets/mingw32.7z | |
| curl -L https://github.com/redpanda-cpp/toolchain-win32-mingw-xp/releases/download/11.4.0-r0/mingw64-11.4.0-r0.7z -o assets/mingw64.7z | |
| - name: Build | |
| run: | | |
| ./packages/msys/build-mingw.sh --ucrt | |
| ./packages/msys/build-mingw.sh --mingw --ucrt | |
| - name: Upload | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: Windows MSYS2 - msystem=${{ matrix.msystem }} | |
| path: dist/ | |
| windows_legacy: | |
| name: Windows NT 5.x | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| profile: | |
| - 64-ucrt | |
| - 32-ucrt | |
| runs-on: windows-2022 | |
| defaults: | |
| run: | |
| shell: msys2 {0} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Setup MSYS2 | |
| uses: msys2/setup-msys2@v2 | |
| with: | |
| msystem: UCRT64 | |
| update: true | |
| - name: Build | |
| run: | | |
| ./packages/mingw/build-xp.sh -p ${{ matrix.profile }} | |
| - name: Upload | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: Windows NT 5.x - profile=${{ matrix.profile }} | |
| path: dist/* | |
| windows_legacy_qmake: | |
| name: Windows NT 5.x (qmake) | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| profile: | |
| - 64-ucrt | |
| - 32-ucrt | |
| runs-on: windows-2022 | |
| defaults: | |
| run: | |
| shell: msys2 {0} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Setup MSYS2 | |
| uses: msys2/setup-msys2@v2 | |
| with: | |
| msystem: UCRT64 | |
| update: true | |
| - name: Build | |
| run: | | |
| ./packages/mingw/build-xp-qmake.sh -p ${{ matrix.profile }} | |
| - name: Upload | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: Windows NT 5.x (qmake) - profile=${{ matrix.profile }} | |
| path: dist/* | |
| windows_msvc_x64: | |
| name: Windows MSVC x64 | |
| if: false | |
| runs-on: windows-2022 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Install MSVC 2019 | |
| run: | | |
| choco install visualstudio2019enterprise --package-parameters "--add Microsoft.VisualStudio.Workload.NativeDesktop --includeRecommended" -y | |
| - name: Setup | |
| uses: jurplel/install-qt-action@v3 | |
| with: | |
| version: '5.15.2' | |
| host: windows | |
| target: desktop | |
| arch: win64_msvc2019_64 | |
| archives: qtbase qtsvg qttools | |
| tools: tools_qtcreator,qt.tools.qtcreator | |
| - name: Build | |
| run: | | |
| $JOM = "${Env:RUNNER_WORKSPACE}/Qt/Tools/QtCreator/bin/jom/jom.exe" | |
| $VS_INSTALL_PATH = "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise" | |
| Import-Module "$VS_INSTALL_PATH\Common7\Tools\Microsoft.VisualStudio.DevShell.dll" | |
| Enter-VsDevShell -VsInstallPath "$VS_INSTALL_PATH" -SkipAutomaticLocation -DevCmdArguments -arch=amd64 | |
| mkdir build && pushd build | |
| qmake PREFIX=${Env:GITHUB_WORKSPACE}/pkg ${Env:GITHUB_WORKSPACE}/Red_Panda_CPP.pro | |
| & $JOM "-j${Env:NUMBER_OF_PROCESSORS}" | |
| & $JOM install | |
| windeployqt ${Env:GITHUB_WORKSPACE}/pkg/RedPandaIDE.exe | |
| rm ${Env:GITHUB_WORKSPACE}/pkg/vc_redist.x64.exe | |
| popd | |
| - name: Upload | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: Windows MSVC x64 | |
| path: pkg/ | |
| debian: | |
| name: Debian | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| arch: [amd64, i386] | |
| include: | |
| - { arch: amd64, platform: linux/amd64 } | |
| - { arch: i386, platform: linux/386 } | |
| env: | |
| IMAGE: docker.io/${{ matrix.arch }}/debian:testing | |
| PLATFORM: ${{ matrix.platform }} | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Build | |
| run: | | |
| ${{ env.CONTAINER_COMMAND }} ./packages/debian/01-in-docker.sh | |
| - name: Upload | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: Debian testing ${{ matrix.arch }} | |
| path: dist/*.deb | |
| ubuntu: | |
| name: Ubuntu | |
| env: | |
| IMAGE: docker.io/amd64/ubuntu:devel | |
| PLATFORM: linux/amd64 | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Build | |
| run: | | |
| ${{ env.CONTAINER_COMMAND }} ./packages/debian/01-in-docker.sh | |
| - name: Upload | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: Ubuntu devel amd64 | |
| path: dist/*.deb | |
| archlinux: | |
| name: Arch Linux | |
| runs-on: ubuntu-latest | |
| env: | |
| IMAGE: docker.io/amd64/archlinux:latest | |
| PLATFORM: linux/amd64 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Build | |
| run: | | |
| ${{ env.CONTAINER_COMMAND }} ./packages/archlinux/01-in-docker.sh | |
| - name: Upload | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: Arch Linux | |
| path: dist/*.pkg.tar.zst | |
| archlinux_hwcaps: | |
| name: Arch Linux (glibc hwcaps) | |
| runs-on: ubuntu-latest | |
| env: | |
| IMAGE: docker.io/amd64/archlinux:latest | |
| PLATFORM: linux/amd64 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Build | |
| run: | | |
| ${{ env.CONTAINER_COMMAND }} ./packages/archlinux-hwcaps/01-in-docker.sh | |
| - name: Upload | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: Arch Linux (glibc hwcaps) | |
| path: dist/*.pkg.tar.zst | |
| fedora: | |
| name: Fedora | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| version: ["latest", "rawhide"] | |
| env: | |
| IMAGE: docker.io/amd64/fedora:${{ matrix.version }} | |
| PLATFORM: linux/amd64 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Build | |
| run: | | |
| ${{ env.CONTAINER_COMMAND }} ./packages/fedora/01-in-docker.sh | |
| - name: Upload | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: Fedora ${{ matrix.version }} x86_64 | |
| path: dist/*.rpm | |
| opensuse: | |
| name: openSUSE | |
| runs-on: ubuntu-latest | |
| env: | |
| IMAGE: docker.io/opensuse/tumbleweed:latest | |
| PLATFORM: linux/amd64 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Build | |
| run: | | |
| ${{ env.CONTAINER_COMMAND }} ./packages/opensuse/01-in-docker.sh | |
| - name: Upload | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: openSUSE Tumbleweed x86_64 | |
| path: dist/*.rpm | |
| alpine: | |
| name: Alpine Linux | |
| runs-on: ubuntu-latest | |
| env: | |
| IMAGE: docker.io/amd64/alpine:edge | |
| PLATFORM: linux/amd64 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Build | |
| run: | | |
| ${{ env.CONTAINER_COMMAND }} ./packages/alpine/01-in-docker.sh | |
| - name: Upload | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: Alpine Linux | |
| path: dist/*.apk | |
| linux_static: | |
| name: Linux static | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| arch: | |
| - x86_64 | |
| - x86_64.v3 | |
| - aarch64 | |
| - riscv64 | |
| - loong64 | |
| - i686 | |
| env: | |
| IMAGE: ghcr.io/redpanda-cpp/appimage-builder-${{ matrix.arch }}:20260107.0 | |
| PLATFORM: linux/amd64 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Build | |
| run: | | |
| ${{ env.CONTAINER_COMMAND }} ./packages/linux/01-in-docker.sh | |
| - name: Upload | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: Linux static ${{ matrix.arch }} | |
| path: dist/* | |
| macos: | |
| name: macOS | |
| if: false | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| arch: [x86_64, arm64, universal] | |
| runs-on: macos-14 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Setup | |
| uses: jurplel/install-qt-action@v4 | |
| with: | |
| version: '6.8.1' | |
| host: mac | |
| target: desktop | |
| arch: clang_64 | |
| archives: qtbase qtsvg qttools qttranslations | |
| - name: Build | |
| run: | | |
| ./packages/macos/build.sh \ | |
| --arch ${{ matrix.arch }} \ | |
| --qt-install-dir $RUNNER_WORKSPACE/Qt \ | |
| --qt-version 6.8.1 | |
| - name: Upload | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: macOS ${{ matrix.arch }} | |
| path: dist/*.tar.xz |