1212permissions :
1313 contents : read
1414 id-token : write # Required by upload-private-artifact-action
15+ security-events : read
1516
1617# cancel in progress builds for this workflow triggered by the same ref
1718concurrency :
@@ -22,94 +23,35 @@ jobs:
2223 build-debos :
2324 outputs :
2425 url : ${{ steps.upload_artifacts.outputs.url }}
25- runs-on : [self-hosted, qcom-u2404, arm64]
26+ # runs-on: [self-hosted, qcom-u2404, arm64]
27+ runs-on : ubuntu-latest
2628 container :
2729 image : debian:trixie
2830 volumes :
2931 - /efs/qli/metaqcom/gh-runners/quic-yocto/downloads:/fileserver-downloads
3032 options : --privileged
3133 steps :
32- # make sure we have latest packages first, to get latest fixes and to
33- # avoid an automated update while we're building
34- - name : Update OS packages
34+ - name : Create artifacts
3535 run : |
36- set -ux
37- apt update
38- apt -y upgrade
39- apt -y full-upgrade
36+ set -eux
4037
41- - uses : actions/checkout@v4
42- with :
43- fetch-depth : 0
44-
45- - name : Copy Linux deb and U-Boot for RB1 from fileserver space for downloads
46- run : |
47- set -ux
48- mkdir -v debos-recipes/local-debs
49- dir="/fileserver-downloads/qcom-deb-images"
50- # copy linux-image but not the -dbg e.g.
51- # linux-image-6.15.0-..._6.15.0...-1_arm64.deb but not
52- # linux-image-6.15.0-...-dbg_6.15.0...-1_arm64.deb
53- find "${dir}/linux-deb-latest/" \
54- -name linux-image\*.deb \
55- -not -name linux-image\*-dbg_\*.deb \
56- -exec cp -av '{}' debos-recipes/local-debs/ \;
57- # copy U-Boot RB1 binary
58- cp -av "${dir}/u-boot-rb1-latest/rb1-boot.img" .
59-
60- # mtools is needed for the flash recipe
61- - name : Install debos and dependencies of the recipes
62- run : apt -y install debos mtools
63-
64- - name : Build rootfs with debos
65- run : |
66- set -ux
67- debos -t xfcedesktop:true -t localdebs:local-debs/ \
68- debos-recipes/qualcomm-linux-debian-rootfs.yaml
38+ mkdir build
39+ echo 8675309 > build/test-artifact.txt
6940
70- - name : Build UFS and SD card images with debos
71- run : |
72- set -ux
73- # debos tries KVM and UML as backends, and falls back to
74- # building directly on the host, but that requires loop
75- # devices; use qemu backend explicitly even if it's slower;
76- # qemu backend also requires to set scratchsize, otherwise the
77- # whole build is done from memory and the out of memory killer
78- # gets triggered
79- debos -b qemu --scratchsize 4GiB -t imagetype:ufs \
80- debos-recipes/qualcomm-linux-debian-image.yaml
81- debos -b qemu --scratchsize 4GiB -t imagetype:sdcard \
82- debos-recipes/qualcomm-linux-debian-image.yaml
41+ - name : Debug OIDC Claims
42+ uses : github/actions-oidc-debugger@main
43+ with :
44+ audience : ' ${{ github.server_url }}/${{ github.repository_owner }}'
8345
84- - name : Build flashable files with debos
85- run : |
86- set -ux
87- debos -t u_boot_rb1:rb1-boot.img \
88- debos-recipes/qualcomm-linux-debian-flash.yaml
46+ - name : Upload artifacts
47+ id : upload
48+ uses : qualcomm-linux/upload-private-artifact-action@main
49+ with :
50+ path : ./build
8951
90- - name : Stage build artifacts for publishing
52+ - name : Print URL
53+ env :
54+ URL : ${{ steps.upload.outputs.url }}
9155 run : |
92- set -ux
93- # create a directory for the current run
94- BUILD_DIR="./uploads"
95- mkdir -vp "${BUILD_DIR}"
96- # copy output files
97- cp -av rootfs.tar.gz "${BUILD_DIR}"
98- cp -av dtbs.tar.gz "${BUILD_DIR}"
99- cp -av disk-ufs.img.gz "${BUILD_DIR}"
100- cp -av disk-sdcard.img.gz "${BUILD_DIR}"
101- # TODO: separate flash_* directories between UFS and eMMC
102- tar -cvf "${BUILD_DIR}"/flash-ufs.tar.gz \
103- disk-ufs.img1 \
104- disk-ufs.img2 \
105- flash_rb3*
106- tar -cvf "${BUILD_DIR}"/flash-emmc.tar.gz \
107- disk-sdcard.img1 \
108- disk-sdcard.img2 \
109- flash_rb1*
110-
111- - name : Upload private artifacts
112- uses : qualcomm-linux/upload-private-artifact-action@v1
113- id : upload_artifacts
114- with :
115- path : ./uploads
56+ set -eu
57+ echo "URL is ${URL}"
0 commit comments