2
0

label-kernel.yml 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. # ci:kernel:x86:64 is going to trigger CI kernel check jobs for x86/64 target
  2. name: Build kernel and check patches for target specified in labels
  3. on:
  4. pull_request:
  5. types:
  6. - labeled
  7. jobs:
  8. set_target:
  9. if: startsWith(github.event.label.name, 'ci:kernel:')
  10. name: Set target
  11. runs-on: ubuntu-latest
  12. outputs:
  13. target: ${{ steps.set_target.outputs.target }}
  14. steps:
  15. - name: Set target
  16. id: set_target
  17. env:
  18. CI_EVENT_LABEL_NAME: ${{ github.event.label.name }}
  19. run: |
  20. echo "$CI_EVENT_LABEL_NAME" | sed -n 's/.*:\(.*\):\(.*\)$/target="\1"/p' | tee --append $GITHUB_OUTPUT
  21. echo "$CI_EVENT_LABEL_NAME" | sed -n 's/.*:\(.*\):\(.*\)$/subtarget="\2"/p' | tee --append $GITHUB_OUTPUT
  22. build_kernel:
  23. name: Build Kernel with external toolchain
  24. needs: set_target
  25. permissions:
  26. contents: read
  27. packages: read
  28. uses: ./.github/workflows/build.yml
  29. with:
  30. target: ${{ needs.set_target.outputs.target }}
  31. subtarget: ${{ needs.set_target.outputs.subtarget }}
  32. build_kernel: true
  33. build_all_kmods: true
  34. check-kernel-patches:
  35. name: Check Kernel patches
  36. needs: set_target
  37. permissions:
  38. contents: read
  39. packages: read
  40. uses: ./.github/workflows/check-kernel-patches.yml
  41. with:
  42. target: ${{ needs.set_target.outputs.target }}
  43. subtarget: ${{ needs.set_target.outputs.subtarget }}