Skip to content

minor change

minor change #1293

Workflow file for this run

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