@@ -109,9 +109,11 @@ jobs:
109109 build/layers/meta-openembedded
110110
111111 # Clone meta-lmp for LmP distro dependencies (needed for distro layer validation)
112- git clone -b ${{ matrix.oe_core_branch }} \
112+ if ! git clone -b ${{ matrix.oe_core_branch }} \
113113 https://github.com/foundriesio/meta-lmp.git \
114- build/layers/meta-lmp || echo "meta-lmp not available for ${{ matrix.oe_core_branch }}, using fallback"
114+ build/layers/meta-lmp; then
115+ echo "meta-lmp not available for ${{ matrix.oe_core_branch }}, using fallback"
116+ fi
115117
116118 # Create minimal meta-lmp-base if meta-lmp clone failed
117119 if [ ! -d "build/layers/meta-lmp" ]; then
@@ -205,15 +207,19 @@ jobs:
205207 echo "=== Running yocto-check-layer on Distro Layer ==="
206208
207209 # Set up BitBake environment
208- export PYTHONPATH="build/layers/bitbake/lib:$PYTHONPATH"
209- export PATH="build/layers/bitbake/bin:build/layers/openembedded-core/scripts:$PATH"
210+ export PYTHONPATH="$(pwd)/ build/layers/bitbake/lib:$PYTHONPATH"
211+ export PATH="$(pwd)/ build/layers/bitbake/bin:$(pwd)/ build/layers/openembedded-core/scripts:$PATH"
210212
211213 # Create minimal build configuration
212214 mkdir -p build/conf
213215
214216 # Initialize Yocto environment first
215217 cd build
216- source ../build/layers/openembedded-core/oe-init-build-env . || echo "oe-init-build-env not available, continuing with manual setup"
218+ if [ -f "../build/layers/openembedded-core/oe-init-build-env" ]; then
219+ source ../build/layers/openembedded-core/oe-init-build-env .
220+ else
221+ echo "oe-init-build-env not available, continuing with manual setup"
222+ fi
217223 cd ..
218224
219225 # Create bblayers.conf
@@ -264,18 +270,29 @@ jobs:
264270 # Test BitBake environment first
265271 cd build
266272 echo "Testing BitBake environment..."
267- bitbake-layers show-layers || echo "BitBake environment test completed"
273+ if ! bitbake-layers show-layers; then
274+ echo "Warning: BitBake environment test failed, but continuing"
275+ fi
268276
269277 # Test basic parsing
270278 echo "Testing basic recipe parsing..."
271- bitbake -p || echo "Parse test completed"
279+ if ! bitbake -p; then
280+ echo "Warning: Parse test failed, but continuing"
281+ fi
272282
273283 # Run the layer check
274284 echo "Running yocto-check-layer..."
275- python3 ../build/layers/openembedded-core/scripts/yocto-check-layer \
276- .. \
285+ # Run yocto-check-layer with proper environment setup
286+ # The layer being tested is the current directory (.)
287+ if python3 build/layers/openembedded-core/scripts/yocto-check-layer \
288+ . \
277289 --no-auto-dependency \
278- --output-log ../distro-layer-check-${{ matrix.yocto_branch }}.log
290+ --output-log distro-layer-check-${{ matrix.yocto_branch }}.log; then
291+ echo "✅ yocto-check-layer completed successfully"
292+ else
293+ echo "❌ yocto-check-layer failed - this will cause the build to fail"
294+ exit 1
295+ fi
279296
280297 - name : Analyze Distro Layer Check Results
281298 run : |
0 commit comments