Parcourir la source

more adjustments

TheWildJames il y a 2 mois
Parent
commit
2c6c935867
2 fichiers modifiés avec 100 ajouts et 21 suppressions
  1. 51 5
      .github/workflows/build.yml
  2. 49 16
      .github/workflows/main.yml

+ 51 - 5
.github/workflows/build.yml

@@ -363,18 +363,64 @@ jobs:
       shell: bash
       run: |
         SUMMARY_FILE="/tmp/build-summary-${{ steps.extract.outputs.file_name }}.md"
+        
+        # Determine build status
+        if [ "${{ job.status }}" = "success" ]; then
+          STATUS="✅ Success"
+        else
+          STATUS="❌ Failed"
+        fi
+        
+        # Get kernel version from Image if available
+        KERNEL_VER_STR=""
+        if [ -f "/home/runner/out/dist/Image" ]; then
+          KERNEL_VER_STR=$(strings "/home/runner/out/dist/Image" | grep -m1 "^Linux version " | sed 's/Linux version //' || echo "")
+        elif [ -f "/home/runner/out/Image" ]; then
+          KERNEL_VER_STR=$(strings "/home/runner/out/Image" | grep -m1 "^Linux version " | sed 's/Linux version //' || echo "")
+        fi
+        
+        # Get KSU version from env (set by kernelsu action)
+        KSU_VER="${KSU_VERSION:-N/A}"
+        KSU_TAG="${KSU_GIT_TAG:-N/A}"
+        
+        # Get SUSFS version from susfs.h if available
+        SUSFS_VER="N/A"
+        if [ -f "${{ github.workspace }}/kernel/common/include/linux/susfs.h" ]; then
+          SUSFS_VER=$(grep '#define SUSFS_VERSION' "${{ github.workspace }}/kernel/common/include/linux/susfs.h" | awk -F'"' '{print $2}' || echo "N/A")
+        fi
+        
+        # Get cache stats from env (set by cache-stats action)
+        CCACHE_HIT="${CCACHE_HIT_RATE:-N/A}"
+        
+        # Get build time (approximate from step timing)
+        BUILD_TIME="N/A"
+        
+        # Count warnings from build log if available
+        WARNINGS="N/A"
+        
         {
-          echo "## ${{ inputs.android_version }} ${{ inputs.kernel_version }}.${{ inputs.sublevel }} (${{ inputs.variant }})"
+          echo "## ${{ inputs.android_version }} ${{ inputs.kernel_version }}.${{ inputs.sublevel }} (${{ inputs.variant }}) — ${STATUS}"
           echo
+          echo "| Metric | Value |"
+          echo "|--------|-------|"
+          echo "| **Status** | ${STATUS} |"
+          echo "| **Kernel** | ${{ inputs.kernel_version }}.${{ inputs.sublevel }}-${{ inputs.android_version }}-${{ inputs.os_patch_level }} |"
+          if [ -n "$KERNEL_VER_STR" ]; then
+            echo "| **Version String** | \`${KERNEL_VER_STR}\` |"
+          fi
+          echo "| **KSU Version** | ${KSU_VER} |"
+          echo "| **KSU Tag** | ${KSU_TAG} |"
+          echo "| **SUSFS Version** | ${SUSFS_VER} |"
+          echo "| **Feature Set** | ${{ inputs.feature_set }} |"
+          echo "| **Variant** | ${{ inputs.variant }} |"
+          echo
+          
           # Kernel Fixes
           if [ -f /tmp/kernel-fixes-summary.md ]; then
+            echo "### 🔧 Kernel Fixes"
             cat /tmp/kernel-fixes-summary.md
             echo
           fi
-          # Add more summary files here as other actions adopt this pattern:
-          # if [ -f /tmp/kernelsu-summary.md ]; then cat /tmp/kernelsu-summary.md; echo; fi
-          # if [ -f /tmp/susfs-summary.md ]; then cat /tmp/susfs-summary.md; echo; fi
-          # if [ -f /tmp/networking-summary.md ]; then cat /tmp/networking-summary.md; echo; fi
         } > "$SUMMARY_FILE"
 
     - name: Upload Build Summary Artifact

+ 49 - 16
.github/workflows/main.yml

@@ -84,10 +84,6 @@ on:
         type: string
         required: false
         default: ""
-      test_release_notes:
-        description: "Test release notes only"
-        type: boolean
-        default: false
 
 jobs:
   prepare-ccache:
@@ -289,7 +285,7 @@ jobs:
     if: ${{ !inputs.test_release_notes && always() }}
     runs-on: ubuntu-latest
     permissions:
-      actions: read
+      actions: write
       contents: read
     needs:
     - build-android12-5-10
@@ -311,22 +307,36 @@ jobs:
     - name: 📋 Workflow Build Summary
       run: |
         {
-          echo "# 📋 Workflow Build Summary"
+          echo "# 📋 Build Summary — $(date -u '+%Y-%m-%d %H:%M UTC')"
           echo
           echo "**Feature Set:** ${{ inputs.feature_set }}"
           echo "**KSU Branch:** ${{ inputs.ksu_branch || 'latest dev' }}"
-          echo "**SUSFS Commits:**"
-          echo "- android12-5.10: ${{ inputs.susfs_commit_android12-5-10 || 'latest' }}"
-          echo "- android13-5.10: ${{ inputs.susfs_commit_android13-5-10 || 'latest' }}"
-          echo "- android13-5.15: ${{ inputs.susfs_commit_android13-5-15 || 'latest' }}"
-          echo "- android14-5.15: ${{ inputs.susfs_commit_android14-5-15 || 'latest' }}"
-          echo "- android14-6.1: ${{ inputs.susfs_commit_android14-6-1 || 'latest' }}"
-          echo "- android15-6.6: ${{ inputs.susfs_commit_android15-6-6 || 'latest' }}"
-          echo "- android16-6.12: ${{ inputs.susfs_commit_android16-6-12 || 'latest' }}"
+          echo
+          
+          # Count successes and failures
+          SUCCESS_COUNT=0
+          FAIL_COUNT=0
+          
+          # Sort summaries so they appear in a consistent order
+          for f in ./summaries/*.md; do
+            [ -f "$f" ] || continue
+            if grep -q "✅ Success" "$f"; then
+              SUCCESS_COUNT=$((SUCCESS_COUNT + 1))
+            else
+              FAIL_COUNT=$((FAIL_COUNT + 1))
+            fi
+          done
+          
+          TOTAL=$((SUCCESS_COUNT + FAIL_COUNT))
+          echo "**Results:** ${SUCCESS_COUNT}/${TOTAL} succeeded"
+          if [ "$FAIL_COUNT" -gt 0 ]; then
+            echo "  - ❌ ${FAIL_COUNT} failed"
+          fi
           echo
           echo "---"
           echo
-          # Sort summaries so they appear in a consistent order
+          
+          # Output each summary
           for f in ./summaries/*.md; do
             [ -f "$f" ] || continue
             cat "$f"
@@ -334,15 +344,38 @@ jobs:
             echo "---"
             echo
           done
+          
+          echo
+          echo "> **SUSFS Commits:**"
+          echo "> - android12-5.10: ${{ inputs.susfs_commit_android12-5-10 || 'latest' }}"
+          echo "> - android13-5.10: ${{ inputs.susfs_commit_android13-5-10 || 'latest' }}"
+          echo "> - android13-5.15: ${{ inputs.susfs_commit_android13-5-15 || 'latest' }}"
+          echo "> - android14-5.15: ${{ inputs.susfs_commit_android14-5-15 || 'latest' }}"
+          echo "> - android14-6.1: ${{ inputs.susfs_commit_android14-6-1 || 'latest' }}"
+          echo "> - android15-6.6: ${{ inputs.susfs_commit_android15-6-6 || 'latest' }}"
+          echo "> - android16-6.12: ${{ inputs.susfs_commit_android16-6-12 || 'latest' }}"
         } >> "$GITHUB_STEP_SUMMARY"
 
     - name: 🧹 Cleanup Summary Files
       if: ${{ always() }}
       run: rm -rf ./summaries
 
+    - name: 🧹 Delete Summary Artifacts
+      if: ${{ always() }}
+      env:
+        GH_TOKEN: ${{ github.token }}
+      run: |
+        # Delete all *-Summary artifacts from this run since they're now consolidated
+        RUN_ID="${{ github.run_id }}"
+        ARTIFACTS=$(gh api "repos/${{ github.repository }}/actions/runs/${RUN_ID}/artifacts" --jq '.artifacts[] | select(.name | endswith("-Summary")) | .id')
+        for id in $ARTIFACTS; do
+          echo "Deleting summary artifact id=$id"
+          gh api -X DELETE "repos/${{ github.repository }}/actions/artifacts/${id}" || true
+        done
+
   release-preview:
     runs-on: ubuntu-latest
-    if: ${{ github.event_name == 'workflow_dispatch' && inputs.test_release_notes == true }}
+    if: ${{ github.event_name == 'workflow_dispatch' }}
     permissions:
       contents: read