CI: build: split cache ccache in separate restore and save jobs

Split caching ccache in separate restore and save jobs to always refresh
the ccache across different runs. Currently if a key is restored, cache
is not saved resulting in a less useful ccache that benefits from
multiple runs.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
This commit is contained in:
Christian Marangi 2023-05-27 17:25:29 +02:00
parent 457f6b0b9c
commit 6321361c6b
No known key found for this signature in database
GPG Key ID: AC001D09ADBFEAD7
1 changed files with 9 additions and 2 deletions

View File

@ -247,8 +247,9 @@ jobs:
./scripts/feeds update -a ./scripts/feeds update -a
./scripts/feeds install -a ./scripts/feeds install -a
- name: Cache ccache - name: Restore ccache cache
uses: actions/cache@v3 id: restore-ccache-cache
uses: actions/cache/restore@v3
with: with:
path: openwrt/.ccache path: openwrt/.ccache
key: ccache-kernel-${{ inputs.target }}/${{ inputs.subtarget }}-${{ hashFiles('openwrt/include/kernel-**') }} key: ccache-kernel-${{ inputs.target }}/${{ inputs.subtarget }}-${{ hashFiles('openwrt/include/kernel-**') }}
@ -474,6 +475,12 @@ jobs:
name: ${{ inputs.target }}-${{ inputs.subtarget }}-logs name: ${{ inputs.target }}-${{ inputs.subtarget }}-logs
path: "openwrt/logs" path: "openwrt/logs"
- name: Save ccache cache
uses: actions/cache/save@v3
with:
path: openwrt/.ccache
key: ${{ steps.restore-ccache-cache.outputs.cache-primary-key }}
- name: Find external toolchain name - name: Find external toolchain name
id: get-toolchain-name id: get-toolchain-name
if: inputs.upload_external_toolchain == true if: inputs.upload_external_toolchain == true