From 48edd6be730d7ded3d391ac070f4fede6f2d015c Mon Sep 17 00:00:00 2001 From: VISHAL KUMAR Date: Mon, 19 May 2025 22:02:37 +0530 Subject: [PATCH 1/2] ci: Add kernel checkers Integrate kernel specific checkers - check-uapi-headers, sparse-check, checkpatch, dt-binding-check and dtb-check https://github.com/qualcomm-linux/kernel-checkers Signed-off-by: VISHAL KUMAR --- .github/workflows/kernel_checkers.yml | 39 +++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 .github/workflows/kernel_checkers.yml diff --git a/.github/workflows/kernel_checkers.yml b/.github/workflows/kernel_checkers.yml new file mode 100644 index 0000000000000..84665d0a3e221 --- /dev/null +++ b/.github/workflows/kernel_checkers.yml @@ -0,0 +1,39 @@ +name: Kernel Checkers +on: + pull_request: + branches: + - main + - qcom-next-staging + +jobs: + checker: + strategy: + matrix: + check: [check-uapi-headers, sparse-check, checkpatch, dt-binding-check, dtb-check] + + runs-on: + group: GHA-Kernel-SelfHosted-RG + labels: [ self-hosted, kernel-prd-u2404-x64-large-od-ephem ] + steps: + - name: Login to ghcr + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Pull docker image from ghcr + run: | + docker pull ghcr.io/qualcomm-linux/kmake-image:latest + docker tag ghcr.io/qualcomm-linux/kmake-image:latest kmake-image + + - name: Checkout code + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Clone checker scripts + run: cd .. && git clone https://github.com/qualcomm-linux/kernel-checkers.git + + - name: Run ${{ matrix.check }} + run: bash ../kernel-checkers/${{ matrix.check }}.sh --kernel-src ${{ github.workspace }} --base ${{ github.event.pull_request.base.sha }} --head ${{ github.event.pull_request.head.sha }} From 1246e6baa225e7020279c63b463733ed0f35610a Mon Sep 17 00:00:00 2001 From: Vishal Kumar Date: Thu, 22 May 2025 19:16:38 +0530 Subject: [PATCH 2/2] Fix: Kernel checker workflow as an action Add reusable kernel checker workflows as action Signed-off-by: Vishal Kumar --- .github/workflows/kernel_checkers.yml | 45 +++++++++++++-------------- 1 file changed, 21 insertions(+), 24 deletions(-) diff --git a/.github/workflows/kernel_checkers.yml b/.github/workflows/kernel_checkers.yml index 84665d0a3e221..4905090bf473e 100644 --- a/.github/workflows/kernel_checkers.yml +++ b/.github/workflows/kernel_checkers.yml @@ -2,38 +2,35 @@ name: Kernel Checkers on: pull_request: branches: - - main - qcom-next-staging jobs: - checker: - strategy: - matrix: - check: [check-uapi-headers, sparse-check, checkpatch, dt-binding-check, dtb-check] - + prepare: runs-on: group: GHA-Kernel-SelfHosted-RG - labels: [ self-hosted, kernel-prd-u2404-x64-large-od-ephem ] + labels: [self-hosted, kernel-prd-u2404-x64-large-od-ephem] steps: - - name: Login to ghcr - uses: docker/login-action@v3 - with: - registry: ghcr.io - username: ${{ github.actor }} - password: ${{ secrets.GITHUB_TOKEN }} - - - name: Pull docker image from ghcr - run: | - docker pull ghcr.io/qualcomm-linux/kmake-image:latest - docker tag ghcr.io/qualcomm-linux/kmake-image:latest kmake-image - - - name: Checkout code + - name: Checkout PR Code uses: actions/checkout@v4 with: fetch-depth: 0 - - name: Clone checker scripts - run: cd .. && git clone https://github.com/qualcomm-linux/kernel-checkers.git + outputs: + kernel_src: ${{ github.workspace }} + base_sha: ${{ github.event.pull_request.base.sha }} + head_sha: ${{ github.event.pull_request.head.sha }} + + checker: + needs: prepare + uses: qualcomm-linux/kernel-checkers/.github/workflows/checker.yml@main + with: + check_name: ${{ matrix.check }} + kernel_src: ${{ needs.prepare.outputs.kernel_src }} + base_sha: ${{ needs.prepare.outputs.base_sha }} + head_sha: ${{ needs.prepare.outputs.head_sha }} - - name: Run ${{ matrix.check }} - run: bash ../kernel-checkers/${{ matrix.check }}.sh --kernel-src ${{ github.workspace }} --base ${{ github.event.pull_request.base.sha }} --head ${{ github.event.pull_request.head.sha }} + strategy: + matrix: + check: [check-uapi-headers, sparse-check, checkpatch, + dt-binding-check, dtb-check] + fail-fast: false