@@ -405,6 +405,7 @@ runs:
405
405
make -j$(nproc --all) O=out $MAKE_ARGS || exit 1
406
406
407
407
- name : Create Kernel ZIP
408
+ id : create_zip
408
409
shell : bash
409
410
run : |
410
411
CONFIG_DIR="$GITHUB_WORKSPACE/${{ env.CONFIG }}"
@@ -421,8 +422,66 @@ runs:
421
422
echo "Creating zip file $ZIP_NAME in $ARTIFACTS_DIR..."
422
423
zip -r "$ARTIFACTS_DIR/$ZIP_NAME" ./*
423
424
425
+ - name : Save Build Metadata
426
+ shell : bash
427
+ if : success() && steps.create_zip.conclusion == 'success'
428
+ id : save_metadata
429
+ run : |
430
+ cd "$GITHUB_WORKSPACE"
431
+ if [ -z "$(ls *.zip 2>/dev/null)" ]; then
432
+ echo "No kernel zip found! Artifact upload might be fake."
433
+ exit 1
434
+ fi
435
+
436
+ cd "$CONFIG/kernel_platform/common"
437
+ CONFIG_FILES=("build.config.common" "build.config.constants")
438
+ BRANCH_LINE=""
439
+
440
+ for file in "${CONFIG_FILES[@]}"; do
441
+ if [ -f "$file" ]; then
442
+ line=$(grep '^[[:space:]]*BRANCH=' "$file" | head -n1 || true)
443
+ if [ -n "$line" ]; then
444
+ BRANCH_LINE="$line"
445
+ echo "Found BRANCH in: $file"
446
+ break # Found it — exit loop
447
+ else
448
+ echo "File exists but no BRANCH= found: $file"
449
+ fi
450
+ else
451
+ echo "File not found: $file"
452
+ fi
453
+ done
454
+
455
+ if [ -z "$BRANCH_LINE" ]; then
456
+ echo "Error: No BRANCH= found in any of: ${CONFIG_FILES[*]}"
457
+ exit 1
458
+ fi
459
+
460
+ BRANCH_VALUE="${BRANCH_LINE#*=}"
461
+ ANDROID_VERSION="${BRANCH_VALUE%-*}"
462
+
463
+ if [ -z "$ANDROID_VERSION" ]; then
464
+ echo "Error: Could not extract 'androidXX' from BRANCH='$BRANCH_VALUE'"
465
+ exit 1
466
+ fi
467
+
468
+ # Extract values using grep and awk
469
+ VERSION=$(grep '^VERSION *=' Makefile | awk '{print $3}')
470
+ PATCHLEVEL=$(grep '^PATCHLEVEL *=' Makefile | awk '{print $3}')
471
+ SUBLEVEL=$(grep '^SUBLEVEL *=' Makefile | awk '{print $3}')
472
+ FULL_VERSION="$VERSION.$PATCHLEVEL.$SUBLEVEL"
473
+
474
+ echo "Kernel Version: $ANDROID_VERSION-$FULL_VERSION"
475
+
476
+ CONFIG_DIR="$GITHUB_WORKSPACE/${{ env.CONFIG }}"
477
+ ARTIFACTS_DIR="$CONFIG_DIR/artifacts"
478
+ cd "$ARTIFACTS_DIR"
479
+ echo "$ANDROID_VERSION-$FULL_VERSION" > ${{ inputs.model }}.txt
480
+
424
481
- name : Upload Artifacts
425
482
uses : actions/upload-artifact@v4
426
483
with :
427
484
name : kernel-${{ env.CONFIG }}
428
- path : ${{ env.CONFIG }}/artifacts/*.zip
485
+ path : |
486
+ ${{ env.CONFIG }}/artifacts/*.zip
487
+ ${{ env.CONFIG }}/artifacts/${{ inputs.model }}.txt
0 commit comments