action.yml 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. name: prepare ak3
  2. description: copy kernel image to ak3 folder
  3. inputs:
  4. branch:
  5. description: 'device kernel/repo'
  6. required: true
  7. runs:
  8. using: composite
  9. steps:
  10. - name: copy image to ak3 folder depending on branch
  11. shell: bash
  12. run: |
  13. cd "$CONFIG"
  14. # 1. Determine target file name based on branch structure
  15. if [[ "${{ inputs.branch }}" == SM-A055* || "${{ inputs.branch }}" == SM-X926* || "${{ inputs.branch }}" == "SM-A075M-Oneui7" ]]; then
  16. target_name="Image.gz"
  17. else
  18. target_name="Image"
  19. fi
  20. shopt -s globstar
  21. shopt -s nocaseglob
  22. KERNEL_IMAGE=""
  23. priority_found=false
  24. fallback_images=()
  25. # 2. Phase 1: Hunt inside priority folders first
  26. for priority in *kbuild_mixed_tree "dist" "boot"; do
  27. for file in **/"$priority"/"$target_name"; do
  28. if [ -f "$file" ] && [[ "$file" != *".git"* ]]; then
  29. KERNEL_IMAGE="$file"
  30. priority_found=true
  31. break 2
  32. fi
  33. done
  34. done
  35. # 3. Phase 2: If not in priority folders, gather ALL copies across the workspace
  36. if [ "$priority_found" = false ]; then
  37. for file in **/"$target_name"; do
  38. if [ -f "$file" ] && [[ "$file" != *".git"* ]]; then
  39. fallback_images+=("$file")
  40. fi
  41. done
  42. fi
  43. shopt -u nocaseglob
  44. # 4. Validation and Discovery Output Block
  45. if [ "$priority_found" = true ]; then
  46. echo "Successfully selected target from priority folder: $KERNEL_IMAGE"
  47. else
  48. echo "WARNING: Could not locate '$target_name' inside your specified priority folders!"
  49. if [ ${#fallback_images[@]} -eq 0 ]; then
  50. echo "ERROR: The file was not found ANYWHERE else in the workspace either. Compilation likely failed."
  51. exit 1
  52. else
  53. echo "--------------------------------------------------------"
  54. echo "DISCOVERY MODE: Found the following alternative locations:"
  55. echo "--------------------------------------------------------"
  56. for fallback in "${fallback_images[@]}"; do
  57. echo " -> $fallback"
  58. done
  59. echo "--------------------------------------------------------"
  60. echo "Action Required: Update your 'for priority in ...' statement with one of the parent folders above."
  61. exit 1 # Halt the workflow so you can read the log output clearly
  62. fi
  63. fi
  64. #if [[ ${{ inputs.branch }} == SM-S928B* || ${{ inputs.branch }} == SM-S931* || ${{ inputs.branch }} == SM-F741* ]]; then
  65. # KERNEL_IMAGE=$(find kernel_platform/out -type f -path "*_kbuild_mixed_tree/Image" | head -n1)
  66. # echo "$KERNEL_IMAGE"
  67. # cp "$KERNEL_IMAGE" "$ANYKERNEL3/Image"
  68. #elif [[ -f ./kernel_platform/bazel-bin/common/kernel_aarch64/Image ]]; then
  69. # cp ./kernel_platform/bazel-bin/common/kernel_aarch64/Image "$ANYKERNEL3/Image"
  70. #elif [[ -f ./bazel-bin/kernel/kernel_aarch64/Image ]]; then
  71. #cp ./bazel-bin/kernel/kernel_aarch64/Image "$ANYKERNEL3/Image"
  72. #elif [[ "${{ inputs.branch }}" == "SM-S928B-Oneui7" || "${{ inputs.branch }}" == "SM-S928B-Oneui8-bit4" || "${{ inputs.branch }}" == "SM-S928B-Oneui8-bit5" || "${{ inputs.branch }}" == "SM-F741B-Oneui8" ]]; then
  73. # cp ./kernel_platform/sec/dist/Image "$ANYKERNEL3/Image"
  74. #elif [[ "${{ inputs.branch }}" == "SM-S928B-Oneui6.1" ]]; then
  75. # cp ./out/msm-pineapple-pineapple-gki/dist/Image "$ANYKERNEL3/Image"
  76. #elif [[ "${{ inputs.branch }}" == "SM-S938B-Oneui7" || "${{ inputs.branch }}" == "SM-S931B-Oneui8" || "${{ inputs.branch }}" == "SM-M556B-Oneui8" ]]; then
  77. # cp ./kernel_platform/gki/dist/Image "$ANYKERNEL3/Image"
  78. #elif [[ "${{ inputs.branch }}" == "SM-X916B" || "${{ inputs.branch }}" == "SM-F946N-Oneui7" || "${{ inputs.branch }}" == "SM-F946B-Oneui8" || "${{ inputs.branch }}" == "SM-S916B-Oneui8" || "${{ inputs.branch }}" == "SM-S918B-Oneui8" || ${{ inputs.branch }} == SM-S911B* || "${{ inputs.branch }}" == "SM-X710-Oneui6.1.1" ]]; then
  79. # cp ./out/msm-kalama-kalama-gki/dist/Image "$ANYKERNEL3/Image"
  80. #elif [[ ${{ inputs.branch }} == SM-A546* || "${{ inputs.branch }}" == "SM-M146B-Oneui7-ADYJ2" || "${{ inputs.branch }}" == "SM-S908B-Oneui8-bitK" || "${{ inputs.branch }}" == "SM-X610-Oneui6.1.1-bit7" || "${{ inputs.branch }}" == "SM-A166B-Oneui7" ]]; then
  81. # cp ./arch/arm64/boot/Image "$ANYKERNEL3/Image"
  82. #elif [[ "${{ inputs.branch }}" == "SM-A566B" ]]; then
  83. # cp ./kernel-6.6/out/arch/arm64/boot/Image "$ANYKERNEL3/Image"
  84. #elif [[ ${{ inputs.branch }} == SM-S926B* ]]; then
  85. # #cp ./out/s5e9945_user/dist/Image "$ANYKERNEL3/Image"
  86. # KERNEL_IMAGE=$(find out -type f -name "Image" | head -n1)
  87. # echo "$KERNEL_IMAGE"
  88. # cp "$KERNEL_IMAGE" "$ANYKERNEL3/Image"
  89. #elif [[ ${{ inputs.branch }} == SM-A556* ]]; then
  90. # #cp ./out/s5e8845_user/dist/Image "$ANYKERNEL3/Image"
  91. # KERNEL_IMAGE=$(find out -type f -name "Image" | head -n1)
  92. # echo "$KERNEL_IMAGE"
  93. # cp "$KERNEL_IMAGE" "$ANYKERNEL3/Image"
  94. #elif [[ "${{ inputs.branch }}" == "SM-S901E-Oneui8" || "${{ inputs.branch }}" == "SM-X800-Oneui8" ]]; then
  95. # cp ./out/msm-waipio-waipio-gki/dist/Image "$ANYKERNEL3/Image"
  96. #elif [[ ${{ inputs.branch }} == SM-A055* ]]; then
  97. # #cp ./out/target/product/a05m/obj/KLEAF_OBJ/dist/kernel_device_modules-6.6/mgk_64_k66_kernel_aarch64.user/Image.gz "$ANYKERNEL3/Image.gz"
  98. # KERNEL_IMAGE=$(find out -type f -name "Image.gz" | head -n1)
  99. # echo "$KERNEL_IMAGE"
  100. # cp "$KERNEL_IMAGE" "$ANYKERNEL3/Image.gz"
  101. #elif [[ "${{ inputs.branch }}" == "SM-A075M-Oneui7" ]]; then
  102. # cp ./out/target/product/a07/obj/KERNEL_OBJ/kernel-5.10/arch/arm64/boot/Image.gz "$ANYKERNEL3/Image.gz"
  103. #elif [[ ${{ inputs.branch }} == SM-X926* ]]; then
  104. # #cp ./out/target/product/gts10u/obj/KLEAF_OBJ/dist/kernel_device_modules-6.1/mgk_64_k61_kernel_aarch64.user/Image.gz "$ANYKERNEL3/Image.gz"
  105. # KERNEL_IMAGE=$(find out -type f -name "Image.gz" | head -n1)
  106. # echo "$KERNEL_IMAGE"
  107. # cp "$KERNEL_IMAGE" "$ANYKERNEL3/Image.gz"
  108. #else
  109. # echo "Error: Image file not found in any expected location"
  110. # exit 1
  111. #fi