diff options
author | Christian Marangi <ansuelsmth@gmail.com> | 2022-10-15 10:56:46 +0200 |
---|---|---|
committer | Christian Marangi <ansuelsmth@gmail.com> | 2022-10-17 00:40:52 +0200 |
commit | 689cfaeb7c37d7199f6e552bf32b0f996ea3040a (patch) | |
tree | 6817f87fe2eb5a7291547b8eebb2ca12b886d56c /.github/workflows | |
parent | 1b147bec1a2bf269a3375715c7c45c0c68006369 (diff) | |
download | upstream-689cfaeb7c37d7199f6e552bf32b0f996ea3040a.tar.gz upstream-689cfaeb7c37d7199f6e552bf32b0f996ea3040a.tar.bz2 upstream-689cfaeb7c37d7199f6e552bf32b0f996ea3040a.zip |
CI: kernel: check if patch are refreshed for each target
Enforce refreshed patch for each target with kernel pr tests.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Diffstat (limited to '.github/workflows')
-rw-r--r-- | .github/workflows/kernel.yml | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/.github/workflows/kernel.yml b/.github/workflows/kernel.yml index d8f98c531d..b9605b0deb 100644 --- a/.github/workflows/kernel.yml +++ b/.github/workflows/kernel.yml @@ -213,3 +213,74 @@ jobs: with: name: ${{ env.TARGET }}-${{ env.SUBTARGET }}-logs path: "openwrt/logs" + + check-patch: + name: Check Kernel patches + needs: determine_targets + runs-on: ubuntu-latest + strategy: + fail-fast: False + matrix: + target: ${{fromJson(needs.determine_targets.outputs.target)}} + + container: ghcr.io/${{ needs.determine_targets.outputs.owner_lc }}/tools:latest + + permissions: + contents: read + packages: read + + steps: + - name: Checkout master directory + uses: actions/checkout@v3 + with: + path: openwrt + + - name: Fix permission + run: | + chown -R buildbot:buildbot openwrt + + - name: Initialization environment + run: | + TARGET=$(echo ${{ matrix.target }} | cut -d "/" -f 1) + SUBTARGET=$(echo ${{ matrix.target }} | cut -d "/" -f 2) + echo "TARGET=$TARGET" >> "$GITHUB_ENV" + echo "SUBTARGET=$SUBTARGET" >> "$GITHUB_ENV" + + - name: Extract prebuilt tools + shell: su buildbot -c "sh -e {0}" + working-directory: openwrt + run: ./scripts/ext-tools.sh --tools /tools.tar + + - name: Setup Config + shell: su buildbot -c "sh -e {0}" + working-directory: openwrt + run: | + echo CONFIG_ALL_KMODS=y >> .config + echo CONFIG_DEVEL=y >> .config + echo CONFIG_AUTOREMOVE=y >> .config + echo CONFIG_CCACHE=y >> .config + + echo "CONFIG_TARGET_${{ env.TARGET }}=y" >> .config + echo "CONFIG_TARGET_${{ env.TARGET }}_${{ env.SUBTARGET }}=y" >> .config + + make defconfig + + - name: Build tools + shell: su buildbot -c "sh -e {0}" + working-directory: openwrt + run: make tools/quilt/compile -j$(nproc) BUILD_LOG=1 || ret=$? .github/workflows/scripts/show_build_failures.sh + + - name: Refresh Kernel patches + shell: su buildbot -c "sh -e {0}" + working-directory: openwrt + run: | + make target/linux/refresh V=s + + . .github/workflows/scripts/ci_helpers.sh + + if git diff --name-only --exit-code; then + success "Kernel patches for ${{ env.TARGET }}/${{ env.SUBTARGET }} seems ok" + else + err "Kernel patches for ${{ env.TARGET }}/${{ env.SUBTARGET }} require refresh. (run 'make target/linux/refresh' and force push this pr)" + exit 1 + fi |