mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-22 06:57:57 +00:00
fad08e8e23
Github Actions cache doesn't permit to overwrite cache if it does
already exist. As a trick to refresh and have fresh ccache pool,
delete the ccache cache if it does exist with the help of Github REST
API. An additional permission is needed to access this API. Add this
permittion to each user of the build workflow.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit 203cc0a7ef
)
53 lines
1.5 KiB
YAML
53 lines
1.5 KiB
YAML
# ci:kernel:x86:64 is going to trigger CI kernel check jobs for x86/64 target
|
|
|
|
name: Build kernel and check patches for target specified in labels
|
|
on:
|
|
pull_request:
|
|
types:
|
|
- labeled
|
|
|
|
jobs:
|
|
set_target:
|
|
if: startsWith(github.event.label.name, 'ci:kernel:')
|
|
name: Set target
|
|
runs-on: ubuntu-latest
|
|
outputs:
|
|
target: ${{ steps.set_target.outputs.target }}
|
|
subtarget: ${{ steps.set_target.outputs.subtarget }}
|
|
|
|
steps:
|
|
- name: Set target
|
|
id: set_target
|
|
env:
|
|
CI_EVENT_LABEL_NAME: ${{ github.event.label.name }}
|
|
run: |
|
|
echo "$CI_EVENT_LABEL_NAME" | sed -n 's/.*:\(.*\):\(.*\)$/target=\1/p' | tee --append $GITHUB_OUTPUT
|
|
echo "$CI_EVENT_LABEL_NAME" | sed -n 's/.*:\(.*\):\(.*\)$/subtarget=\2/p' | tee --append $GITHUB_OUTPUT
|
|
|
|
build_kernel:
|
|
name: Build Kernel with external toolchain
|
|
needs: set_target
|
|
permissions:
|
|
contents: read
|
|
packages: read
|
|
actions: write
|
|
uses: ./.github/workflows/build.yml
|
|
with:
|
|
container_name: toolchain
|
|
target: ${{ needs.set_target.outputs.target }}
|
|
subtarget: ${{ needs.set_target.outputs.subtarget }}
|
|
build_kernel: true
|
|
build_all_kmods: true
|
|
|
|
check-kernel-patches:
|
|
name: Check Kernel patches
|
|
needs: set_target
|
|
permissions:
|
|
contents: read
|
|
packages: read
|
|
actions: write
|
|
uses: ./.github/workflows/check-kernel-patches.yml
|
|
with:
|
|
target: ${{ needs.set_target.outputs.target }}
|
|
subtarget: ${{ needs.set_target.outputs.subtarget }}
|