Skip to content

Commit 406a5b5

Browse files
committed
More parallel tasks in build
1 parent 278245f commit 406a5b5

File tree

1 file changed

+44
-11
lines changed

1 file changed

+44
-11
lines changed

.github/workflows/build.yml

Lines changed: 44 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,9 @@ jobs:
3030
uses: actions/cache@v4
3131
with:
3232
path: |
33-
!.apt_cache/archives/lock
34-
!.apt_cache/archives/partial
3533
.apt_cache
3634
debian-*-generic-arm64.tar
37-
key: ${{ matrix.debian_codename }}-files
35+
key: ${{ matrix.debian_codename }}-build-files
3836

3937
- name: Install deps
4038
run: |
@@ -45,9 +43,43 @@ jobs:
4543
run: |
4644
set -x
4745
make qemu_build DEBIAN_CODENAME=${{ matrix.debian_codename }}
48-
ls -lh
4946
sudo mv pixelpilot ${{ matrix.debian_codename }}_pixelpilot
50-
rm -f disk.raw # for some reason reusing the disc causes `pgpconf` to hang
47+
sudo rm -r .apt_cache/archives/{lock,partial}
48+
49+
- name: Upload binary
50+
uses: actions/upload-artifact@v4
51+
with:
52+
name: ${{ matrix.debian_codename }}-bin
53+
path: |
54+
${{ matrix.debian_codename }}_pixelpilot
55+
56+
build_deb:
57+
name: Build DEB pkg for ${{ matrix.debian_codename }}
58+
strategy:
59+
matrix:
60+
debian_codename:
61+
- bullseye
62+
- bookworm
63+
runs-on: ubuntu-latest
64+
steps:
65+
- name: Checkout
66+
uses: actions/checkout@v4
67+
with:
68+
submodules: recursive
69+
70+
- name: Cache debian
71+
id: cache-debian
72+
uses: actions/cache@v4
73+
with:
74+
path: |
75+
.apt_cache
76+
debian-*-generic-arm64.tar
77+
key: ${{ matrix.debian_codename }}-build_deb-files
78+
79+
- name: Install deps
80+
run: |
81+
sudo apt-get update
82+
sudo apt-get install -y qemu-user-static
5183
5284
- name: Build deb package
5385
run: |
@@ -56,13 +88,13 @@ jobs:
5688
for f in `ls pixelpilot-rk*_arm64.deb`; do
5789
mv $f "${{ matrix.debian_codename }}_${f}";
5890
done
91+
sudo rm -r .apt_cache/archives/{lock,partial}
5992
6093
- name: Upload binary
6194
uses: actions/upload-artifact@v4
6295
with:
63-
name: ${{ matrix.debian_codename }}
96+
name: ${{ matrix.debian_codename }}-deb
6497
path: |
65-
${{ matrix.debian_codename }}_pixelpilot
6698
${{ matrix.debian_codename }}_pixelpilot-rk_*_arm64.deb
6799
${{ matrix.debian_codename }}_pixelpilot-rk-dbgsym_*_arm64.deb
68100
@@ -85,10 +117,8 @@ jobs:
85117
with:
86118
path: |
87119
.apt_cache
88-
!.apt_cache/archives/lock
89-
!.apt_cache/archives/partial
90120
debian-*-generic-arm64.tar
91-
key: ${{ matrix.debian_codename }}-files
121+
key: ${{ matrix.debian_codename }}-test-files
92122

93123
- name: Install deps
94124
run: |
@@ -98,11 +128,14 @@ jobs:
98128
- name: QEMU Test
99129
run: |
100130
make qemu_test DEBIAN_CODENAME=${{ matrix.debian_codename }}
131+
sudo rm -r .apt_cache/archives/{lock,partial}
101132
102133
release:
103134
name: Release Artifacts
104135
runs-on: ubuntu-latest
105-
needs: build
136+
needs:
137+
- build
138+
- build_deb
106139
steps:
107140
- name: Checkout
108141
uses: actions/checkout@v4

0 commit comments

Comments
 (0)