Skip to content

Commit c31f1d0

Browse files
ci: track oe-core/bitbake master for early-warning signal
Adds a parse-oe-core-master job (matrix over the 3 arches we support) that clones openembedded-core@master and bitbake@master and runs parse + fetch against them. Marked continue-on-error so breakage in oe-core master doesn't block merges to this repo -- the point is the alert. Plus a daily cron at 05:23 UTC so master drift gets caught even when no change to this repo lands for a few days.
1 parent 9647ee1 commit c31f1d0

1 file changed

Lines changed: 75 additions & 0 deletions

File tree

.github/workflows/ci.yml

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,10 @@ on:
55
branches: [main, master]
66
pull_request:
77
workflow_dispatch:
8+
# Daily run picks up oe-core / bitbake master drift even when no
9+
# change to this repo has fired CI.
10+
schedule:
11+
- cron: '23 5 * * *'
812

913
# Cancel superseded runs for the same ref to save CI minutes.
1014
concurrency:
@@ -173,6 +177,77 @@ jobs:
173177
source oe-init-build-env build
174178
bitbake -c fetch vscode
175179
180+
# Track oe-core / bitbake master for early warning on bitbake API
181+
# drift, new QA checks, layer.conf format changes, etc. This job is
182+
# informational (continue-on-error) so a hot bitbake-master breakage
183+
# doesn't block merges; the value is the alert, not the gate.
184+
parse-oe-core-master:
185+
name: parse (oe-core master / ${{ matrix.machine }}) [informational]
186+
runs-on: ubuntu-22.04
187+
continue-on-error: true
188+
strategy:
189+
fail-fast: false
190+
matrix:
191+
machine: [qemux86-64, qemuarm64, qemuarm]
192+
steps:
193+
- uses: actions/checkout@v4
194+
with:
195+
path: meta-vscode
196+
197+
- name: Free disk space
198+
run: |
199+
sudo rm -rf /usr/share/dotnet /usr/local/lib/android /opt/ghc \
200+
/opt/hostedtoolcache/CodeQL /usr/local/share/boost \
201+
"$AGENT_TOOLSDIRECTORY"
202+
203+
- name: Clone oe-core (master)
204+
run: |
205+
git clone --depth 1 --branch master \
206+
https://git.openembedded.org/openembedded-core oe-core
207+
208+
- name: Clone bitbake (master)
209+
run: |
210+
git clone --depth 1 --branch master \
211+
https://git.openembedded.org/bitbake oe-core/bitbake
212+
213+
- name: Install Yocto host dependencies
214+
run: |
215+
sudo apt-get update
216+
sudo apt-get install -y --no-install-recommends \
217+
gawk wget git diffstat unzip texinfo gcc build-essential chrpath \
218+
socat cpio python3 python3-pip python3-pexpect xz-utils debianutils \
219+
iputils-ping python3-git python3-jinja2 python3-subunit zstd liblz4-tool \
220+
file locales libacl1
221+
sudo locale-gen en_US.UTF-8
222+
223+
- name: Parse the layer (MACHINE=${{ matrix.machine }})
224+
env:
225+
LANG: en_US.UTF-8
226+
LC_ALL: en_US.UTF-8
227+
run: |
228+
set -eo pipefail
229+
cd oe-core
230+
source oe-init-build-env build
231+
cat >> conf/local.conf <<EOF
232+
MACHINE = "${{ matrix.machine }}"
233+
BB_NUMBER_THREADS = "2"
234+
PARALLEL_MAKE = "-j 2"
235+
CONF_VERSION = "2"
236+
EOF
237+
bitbake-layers add-layer "$GITHUB_WORKSPACE/meta-vscode"
238+
bitbake-layers show-layers
239+
bitbake -p
240+
241+
- name: Fetch vscode (MACHINE=${{ matrix.machine }})
242+
env:
243+
LANG: en_US.UTF-8
244+
LC_ALL: en_US.UTF-8
245+
run: |
246+
set -eo pipefail
247+
cd oe-core
248+
source oe-init-build-env build
249+
bitbake -c fetch vscode
250+
176251
# Build vscode end-to-end on the LTS we care most about today
177252
# (scarthgap). This catches QA failures (libdir, file-rdeps, etc.)
178253
# that bitbake -p doesn't run. Single arch (x86_64) for cost; the

0 commit comments

Comments
 (0)