Skip to content

Commit 96e0ac5

Browse files
committed
ci: debos: Switch to local APT repository
Create a local APT repository during debos builds and use it to test mainline kernels. Signed-off-by: Loïc Minier <[email protected]>
1 parent 19fdeb9 commit 96e0ac5

File tree

2 files changed

+30
-19
lines changed

2 files changed

+30
-19
lines changed

.github/workflows/debos.yml

Lines changed: 29 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -57,39 +57,49 @@ jobs:
5757
with:
5858
fetch-depth: 0
5959

60-
- name: Copy Linux deb and U-Boot for RB1 from fileserver space for downloads
60+
# copy U-Boot RB1 binary
61+
- name: Copy U-Boot for RB1 from fileserver space for downloads
6162
run: |
6263
set -ux
63-
dir="/fileserver-downloads/qcom-deb-images"
64-
if [ "${{ inputs.mainline_kernel }}" = true ]; then
65-
mkdir -v debos-recipes/local-debs
66-
# copy linux-image but not the -dbg e.g.
67-
# linux-image-6.15.0-..._6.15.0...-1_arm64.deb but not
68-
# linux-image-6.15.0-...-dbg_6.15.0...-1_arm64.deb
69-
find "${dir}/linux-deb-latest/" \
70-
-name linux-image\*.deb \
71-
-not -name linux-image\*-dbg_\*.deb \
72-
-exec cp -av '{}' debos-recipes/local-debs/ \;
73-
fi
74-
# copy U-Boot RB1 binary
75-
cp -av "${dir}/u-boot-rb1-latest/rb1-boot.img" .
64+
cp -av "/fileserver-downloads/qcom-deb-images/u-boot-rb1-latest/rb1-boot.img" .
7665
7766
# mtools is needed for the flash recipe
7867
- name: Install debos and dependencies of the recipes
7968
run: apt -y install debos mtools
8069

81-
- name: Build rootfs with debos
70+
- name: Setup local APT repo for kernel deb
8271
run: |
8372
set -ux
84-
localdebs=""
85-
if [ -d debos-recipes/local-debs ]; then
86-
localdebs="-t localdebs:local-debs/"
73+
74+
fileserver_downloads="/fileserver-downloads/qcom-deb-images"
75+
76+
# create a temporary APT repository
77+
mkdir -v local-apt-repo
78+
if [ "${{ inputs.mainline_kernel }}" = true ]; then
79+
mkdir -v local-apt-repo/linux-deb-latest
80+
# get the kernel deb from the fileserver space for downloads
81+
cp -av "${fileserver_downloads}"/*.deb \
82+
local-apt-repo/linux-deb-latest
8783
fi
84+
# create a minimal APT configuration
85+
mkdir -v local-apt-repo/conf
86+
echo "APT::FTPArchive::Release::Codename \"trixie\";" \
87+
>local-apt-repo/conf/releases
88+
dpkg-scanpackages local-apt-repo /dev/null |
89+
gzip -9c >local-apt-repo/Packages.gz
90+
apt-ftparchive \
91+
-c local-apt-repo/conf/releases \
92+
release debos-recipes/local-apt-repo \
93+
>local-apt-repo/Release
94+
95+
- name: Build rootfs with debos
96+
run: |
97+
set -ux
8898
debos \
8999
-t overlays:'${{ inputs.overlays }}' \
90100
-t experimentalkernel:true \
91101
-t xfcedesktop:true \
92-
${localdebs} \
102+
-t aptlocalrepo:${PWD}/local-apt-repo \
93103
-t kernelpackage:'${{ inputs.kernelpackage }}' \
94104
--print-recipe \
95105
debos-recipes/qualcomm-linux-debian-rootfs.yaml

.github/workflows/linux.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,7 @@ jobs:
100100
uses: ./.github/workflows/debos.yml
101101
with:
102102
mainline_kernel: true
103+
kernelpackage: linux-image-6.17.0-rc3
103104

104105
test-mainline-linux:
105106
uses: ./.github/workflows/test.yml

0 commit comments

Comments
 (0)