action.yml 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. name: get kernel version before cloning
  2. description: get kernel version before cloning
  3. runs:
  4. using: composite
  5. steps:
  6. - name: Locate and extract kernel version
  7. shell: bash
  8. run: |
  9. REPO="WildKernels/Samsung_Kernels"
  10. echo "Searching for kernel Makefile on branch $BRANCH"
  11. POSSIBLE_MAKEFILES=(
  12. "kernel_platform/common/Makefile"
  13. "kernel/Makefile"
  14. "kernel-6.6/Makefile"
  15. "kernel-6.1/Makefile"
  16. "kernel-5.10/Makefile"
  17. "Makefile"
  18. )
  19. MAKEFILE_PATH=""
  20. MAKEFILE_CONTENT=""
  21. for file in "${POSSIBLE_MAKEFILES[@]}"; do
  22. RAW_URL="https://raw.githubusercontent.com/$REPO/$BRANCH/$file"
  23. echo "Checking: $file"
  24. CONTENT=$(curl -fsSL "$RAW_URL" || true)
  25. if echo "$CONTENT" | grep -E '^VERSION[[:space:]]*=' >/dev/null; then
  26. MAKEFILE_PATH="$file"
  27. MAKEFILE_CONTENT="$CONTENT"
  28. break
  29. fi
  30. done
  31. if [ -z "$MAKEFILE_PATH" ]; then
  32. echo "::error::Could not find kernel Makefile"
  33. exit 1
  34. fi
  35. echo "Found kernel Makefile: $MAKEFILE_PATH"
  36. VERSION=$(echo "$MAKEFILE_CONTENT" | grep -E '^VERSION[[:space:]]*=' | awk '{print $3}' | head -n1)
  37. PATCHLEVEL=$(echo "$MAKEFILE_CONTENT" | grep -E '^PATCHLEVEL[[:space:]]*=' | awk '{print $3}' | head -n1)
  38. if [ -z "$VERSION" ] || [ -z "$PATCHLEVEL" ]; then
  39. echo "::error::Could not extract kernel version from $MAKEFILE_PATH"
  40. exit 1
  41. fi
  42. KERNEL_VERSION="$VERSION.$PATCHLEVEL"
  43. case "$KERNEL_VERSION" in
  44. 5.10)
  45. ANDROID_VERSION="android12"
  46. ;;
  47. 5.15)
  48. ANDROID_VERSION="android13"
  49. ;;
  50. 6.1)
  51. ANDROID_VERSION="android14"
  52. ;;
  53. 6.6)
  54. ANDROID_VERSION="android15"
  55. ;;
  56. *)
  57. ANDROID_VERSION="unknown"
  58. ;;
  59. esac
  60. echo "Android: $ANDROID_VERSION"
  61. echo "Kernel: $KERNEL_VERSION"
  62. echo "ANDROID_VER=$ANDROID_VERSION" >> "$GITHUB_ENV"
  63. echo "KERNEL_VER=$KERNEL_VERSION" >> "$GITHUB_ENV"