@@ -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
+ CONFIG_DIR="$GITHUB_WORKSPACE/${{ env.CONFIG }}"
431
+ ARTIFACTS_DIR="$CONFIG_DIR/artifacts"
432
+ cd "$ARTIFACTS_DIR"
433
+ if [ -z "$(ls *.zip 2>/dev/null)" ]; then
434
+ echo "No kernel zip found! Artifact upload might be fake."
435
+ exit 1
436
+ fi
437
+
438
+ cd "$CONFIG_DIR/kernel_platform/common"
439
+ CONFIG_FILES=("build.config.common" "build.config.constants")
440
+ BRANCH_LINE=""
441
+
442
+ for file in "${CONFIG_FILES[@]}"; do
443
+ if [ -f "$file" ]; then
444
+ line=$(grep '^[[:space:]]*BRANCH=' "$file" | head -n1 || true)
445
+ if [ -n "$line" ]; then
446
+ BRANCH_LINE="$line"
447
+ echo "Found BRANCH in: $file"
448
+ break # Found it — exit loop
449
+ else
450
+ echo "File exists but no BRANCH= found: $file"
451
+ fi
452
+ else
453
+ echo "File not found: $file"
454
+ fi
455
+ done
456
+
457
+ if [ -z "$BRANCH_LINE" ]; then
458
+ echo "Error: No BRANCH= found in any of: ${CONFIG_FILES[*]}"
459
+ exit 1
460
+ fi
461
+
462
+ BRANCH_VALUE="${BRANCH_LINE#*=}"
463
+ ANDROID_VERSION="${BRANCH_VALUE%-*}"
464
+
465
+ if [ -z "$ANDROID_VERSION" ]; then
466
+ echo "Error: Could not extract 'androidXX' from BRANCH='$BRANCH_VALUE'"
467
+ exit 1
468
+ fi
469
+
470
+ # Extract values using grep and awk
471
+ VERSION=$(grep '^VERSION *=' Makefile | awk '{print $3}')
472
+ PATCHLEVEL=$(grep '^PATCHLEVEL *=' Makefile | awk '{print $3}')
473
+ SUBLEVEL=$(grep '^SUBLEVEL *=' Makefile | awk '{print $3}')
474
+ FULL_VERSION="$VERSION.$PATCHLEVEL.$SUBLEVEL"
475
+
476
+ echo "Kernel Version: $ANDROID_VERSION-$FULL_VERSION"
477
+
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