Skip to content

Commit d8d1d36

Browse files
committed
build-test-recipe.yml: use bitbake-setup
1 parent d9a62f7 commit d8d1d36

File tree

2 files changed

+41
-22
lines changed

2 files changed

+41
-22
lines changed

.github/workflows/build-test-recipe.yml

Lines changed: 40 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -91,21 +91,45 @@ jobs:
9191
- qemuarm
9292
- qemuarm64
9393
- qemux86-64
94+
- qemuriscv64
9495
runs-on: codebuild-${{ vars.CODEBUILD_RUNNER_NAME || 'meta-aws' }}-${{ github.run_id }}-${{ github.run_attempt }}
9596
steps:
9697
- name: Checkout meta-aws
9798
uses: actions/checkout@v4
9899
with:
99100
path: ${{ github.workspace }}/meta-aws
100-
- name: Checkout meta-oe
101-
uses: actions/checkout@v4
102-
with:
103-
repository: openembedded/meta-openembedded
104-
path: ${{ github.workspace }}/meta-openembedded
105-
ref: ${{ needs.changed.outputs.release }}
106-
- name: Checkout poky
101+
- name: Checkout BitBake
102+
run: git clone https://git.openembedded.org/bitbake -b ${{ needs.changed.outputs.release }} ${{ github.workspace }}/bitbake
103+
- name: Setup Source Override
104+
run: |
105+
cd meta-aws
106+
META_AWS_REV=$(git rev-parse HEAD)
107+
cd ..
108+
cat > meta-aws-override.json << EOF
109+
{
110+
"sources": {
111+
"meta-aws": {
112+
"git-remote": {
113+
"remotes": {
114+
"origin": {
115+
"uri": "file://${{ github.workspace }}/meta-aws"
116+
}
117+
},
118+
"branch": "${{ needs.changed.outputs.release }}",
119+
"rev": "${META_AWS_REV}"
120+
},
121+
"path": "meta-aws"
122+
}
123+
},
124+
"version": "1.0"
125+
}
126+
EOF
127+
- name: Initialize Build Environment
107128
run: |
108-
git clone git://git.yoctoproject.org/poky --single-branch ${{ github.workspace }}/poky -b ${{ needs.changed.outputs.release }}
129+
bitbake/bin/bitbake-setup init --non-interactive \
130+
--source-overrides meta-aws-override.json \
131+
${{ github.workspace }}/meta-aws/.github/workflows/poky-with-meta-aws.conf.json \
132+
poky distro/poky machine/${{ matrix.machine }}
109133
- name: Get changed Recipes or defaults
110134
id: recipes_to_build_test
111135
shell: bash
@@ -159,7 +183,7 @@ jobs:
159183
sysctl vm.mmap_min_addr=65536
160184
sudo RECIPES="$RECIPES" -u yoctouser bash -c '
161185
cd ${{ github.workspace }}
162-
source poky/oe-init-build-env build
186+
source /home/runner/bitbake-builds/poky-with-meta-aws-poky-distro_poky-machine_${{ matrix.machine }}/build/init-build-env
163187
echo QEMU_USE_KVM = \"\" >> conf/local.conf
164188
# set to max for arm32
165189
echo QB_MEM:arm = \"-m 3G\" >> conf/local.conf
@@ -176,40 +200,35 @@ jobs:
176200
# this will allow - running testimage cmd: bitbake core-image-minimal -c testimage
177201
echo IMAGE_CLASSES += \"testimage\" >> conf/local.conf
178202
cat conf/local.conf
179-
bitbake-layers add-layer ../meta-openembedded/meta-oe
180-
bitbake-layers add-layer ../meta-openembedded/meta-python
181-
bitbake-layers add-layer ../meta-openembedded/meta-networking
182-
bitbake-layers add-layer ../meta-openembedded/meta-multimedia
183-
bitbake-layers add-layer ../meta-aws
184203
export SSTATE_DIR=/sstate-cache
185204
export DL_DIR=/downloads
186205
export MACHINE=${{ matrix.machine }}
187206
export BB_ENV_PASSTHROUGH_ADDITIONS="$BB_ENV_PASSTHROUGH_ADDITIONS SSTATE_DIR DL_DIR"
188207
bitbake $RECIPES -f -k | tee -a $MACHINE-build.log'
189208
set -e
190209
echo RECIPES to build: $RECIPES
191-
if [ -e "build/${{ matrix.machine }}-build.log" ]; then
192-
if grep -A3 -E ' failed| ERROR:' "build/${{ matrix.machine }}-build.log"; then
210+
if [ -e "/home/runner/bitbake-builds/poky-with-meta-aws-poky-distro_poky-machine_${{ matrix.machine }}/build/${{ matrix.machine }}-build.log" ]; then
211+
if grep -A3 -E ' failed| ERROR:' "/home/runner/bitbake-builds/poky-with-meta-aws-poky-distro_poky-machine_${{ matrix.machine }}/build/${{ matrix.machine }}-build.log"; then
193212
echo "Found failed or ERROR in build log"
194213
exit 1
195214
fi
196215
else
197-
echo "Build log file not found: build/${{ matrix.machine }}-build.log"
216+
echo "Build log file not found: /home/runner/bitbake-builds/poky-with-meta-aws-poky-distro_poky-machine_${{ matrix.machine }}/build/${{ matrix.machine }}-build.log"
198217
exit 1
199218
fi
200219
- name: Save ${{ matrix.machine }}-build.log
201220
if: '!cancelled()'
202221
uses: actions/upload-artifact@v4
203222
with:
204223
name: ${{ matrix.machine }}-build.log
205-
path: build/${{ matrix.machine }}-build.log
224+
path: /home/runner/bitbake-builds/poky-with-meta-aws-poky-distro_poky-machine_${{ matrix.machine }}/build/${{ matrix.machine }}-build.log
206225
- name: Run test
207226
env:
208227
RECIPES: ${{ steps.recipes_to_build_test.outputs.recipes }}
209228
run: |
210229
sudo RECIPES="$RECIPES" -u yoctouser bash -c '
211230
cd ${{ github.workspace }}
212-
source poky/oe-init-build-env build
231+
source /home/runner/bitbake-builds/poky-with-meta-aws-poky-distro_poky-machine_${{ matrix.machine }}/build/init-build-env
213232
# PUT = package under test
214233
for recipe in $RECIPES; do PUT+="${recipe}-ptest "; done
215234
echo IMAGE_INSTALL:append = \" ptest-runner ssh ${PUT}\" >> conf/local.conf
@@ -222,11 +241,11 @@ jobs:
222241
resulttool report tmp/log/oeqa/testresults.json | tee -a ${{ matrix.machine }}-resulttool_report.txt'
223242
set -e
224243
echo RECIPES to test: $RECIPES
225-
test -e build/tmp/log/oeqa/testresults.json && ! grep -B3 "\"FAILED\"" build/tmp/log/oeqa/testresults.json
244+
test -e /home/runner/bitbake-builds/poky-with-meta-aws-poky-distro_poky-machine_${{ matrix.machine }}/build/tmp/log/oeqa/testresults.json && ! grep -B3 "\"FAILED\"" /home/runner/bitbake-builds/poky-with-meta-aws-poky-distro_poky-machine_${{ matrix.machine }}/build/tmp/log/oeqa/testresults.json
226245
227246
- name: Save resulttool_report.txt
228247
if: '!cancelled()'
229248
uses: actions/upload-artifact@v4
230249
with:
231250
name: ${{ matrix.machine }}-resulttool_report.txt
232-
path: build/${{ matrix.machine }}-resulttool_report.txt
251+
path: /home/runner/bitbake-builds/poky-with-meta-aws-poky-distro_poky-machine_${{ matrix.machine }}/build/${{ matrix.machine }}-resulttool_report.txt

.github/workflows/poky-with-meta-aws.conf.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@
6969
"oe-fragments-one-of": {
7070
"machine": {
7171
"description": "Target machines",
72-
"options" : ["machine/qemux86-64", "machine/qemuarm64", "machine/qemuriscv64", "machine/genericarm64", "machine/genericx86-64"]
72+
"options" : ["machine/qemuarm", "machine/qemuarm64", "machine/qemux86-64", "machine/qemuriscv64", "machine/genericarm64", "machine/genericx86-64"]
7373
},
7474
"distro": {
7575
"description": "Distribution configuration variants",

0 commit comments

Comments
 (0)