Skip to content

Commit f33219b

Browse files
committed
ci: use run-on-arch-action with base_image for all builds
1 parent 52c0a25 commit f33219b

1 file changed

Lines changed: 15 additions & 31 deletions

File tree

.github/workflows/ci_linux.yml

Lines changed: 15 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@ jobs:
88
fail-fast: false
99
matrix:
1010
m:
11-
- { os: ubuntu-24.04-arm, configuration: Release, arch: armv7 }
12-
- { os: ubuntu-24.04-arm, configuration: Release, arch: aarch64 }
13-
# - { os: ubuntu-24.04, configuration: Release, arch: amd64 }
14-
# - { os: ubuntu-24.04, configuration: Debug, arch: amd64 }
11+
- { os: ubuntu-24.04-arm, configuration: Release, arch: armv7, base_image: --platform=linux/arm/v7 arm32v7/ubuntu:25.04 }
12+
- { os: ubuntu-24.04-arm, configuration: Release, arch: aarch64, base_image: --platform=linux/arm64 arm64v8/ubuntu:25.04 }
13+
- { os: ubuntu-24.04, configuration: Release, arch: amd64, base_image: --platform=linux/amd64 amd64/ubuntu:25.04 }
14+
- { os: ubuntu-24.04, configuration: Debug, arch: amd64, base_image: --platform=linux/amd64 amd64/ubuntu:25.04 }
1515
runs-on: ${{matrix.m.os}}
1616
name: 'Linux ${{matrix.m.configuration}} ${{matrix.m.arch}}'
1717
steps:
@@ -23,33 +23,12 @@ jobs:
2323
id: date
2424
run: echo "date=$(date +'%Y-%m-%d_%H-%M')" >> $GITHUB_OUTPUT
2525

26-
- name: amd64 | Install libs
27-
if: matrix.m.arch == 'amd64'
28-
run: |
29-
sudo apt-get update
30-
sudo apt-get install cmake ninja-build qtbase5-dev qttools5-dev libqscintilla2-qt5-dev libqtermwidget5-1-dev libutf8proc-dev
31-
32-
- name: Debug amd64 | Configure with cmake
33-
if: matrix.m.configuration == 'Debug' && matrix.m.arch == 'amd64'
34-
run: mkdir build && cd build && cmake .. -G Ninja -DCMAKE_BUILD_TYPE=${{matrix.m.configuration}}
35-
36-
- name: Debug | Build with cmake
37-
if: matrix.m.configuration == 'Debug'
38-
run: ninja
39-
working-directory: build
40-
41-
- name: Release amd64 | Build deb packages with debuild
42-
if: matrix.m.configuration == 'Release' && matrix.m.arch == 'amd64'
43-
run: |
44-
sudo apt-get install devscripts debhelper libenca-dev build-essential
45-
debuild -b -uc -us
46-
47-
- name: armv7, aarch64 | Install libs and build with dpkg-buildpackage
48-
if: matrix.m.arch == 'armv7' || matrix.m.arch == 'aarch64'
26+
- name: Install libs and build with dpkg-buildpackage for Release or ninja for Debug
4927
uses: uraimo/run-on-arch-action@v3
5028
with:
51-
arch: ${{matrix.m.arch}}
52-
distro: ubuntu_rolling
29+
arch: none
30+
distro: none
31+
base_image: ${{matrix.m.base_image}}
5332
# GitHub token used for caching Docker images in project's public package registry
5433
githubToken: ${{github.token}}
5534
# Mount the juffed directory as /artifacts in the container
@@ -64,8 +43,13 @@ jobs:
6443
apt-get install -q -y pkg-config devscripts debhelper libenca-dev
6544
run: |
6645
cmake --version
67-
debuild -b -uc -us
68-
cp ../*.deb /artifacts
46+
if [ "${{matrix.m.configuration}}" == "Release" ]; then
47+
debuild -b -uc -us
48+
fi
49+
if [ "${{matrix.m.configuration}}" == "Debug" ]; then
50+
mkdir build && cd build && cmake .. -G Ninja -DCMAKE_BUILD_TYPE=${{matrix.m.configuration}}
51+
ninja
52+
fi
6953
7054
- name: Release | Upload deb packages
7155
if: matrix.m.configuration == 'Release'

0 commit comments

Comments
 (0)