From a9945fc528c950659793b6fb4979586297ea1497 Mon Sep 17 00:00:00 2001 From: Angus Gratton Date: Wed, 11 Dec 2024 14:59:39 +1100 Subject: [PATCH] ci: Add caching of ccache for Zephyr. Similar to the ESP32 builds, but needs additional step to pass the ccache directory through to the Zephyr container. This work was funded through GitHub Sponsors. Signed-off-by: Angus Gratton --- .github/workflows/ports_zephyr.yml | 4 ++++ tools/ci.sh | 3 +++ 2 files changed, 7 insertions(+) diff --git a/.github/workflows/ports_zephyr.yml b/.github/workflows/ports_zephyr.yml index ff3e19c7e..eb85af6a3 100644 --- a/.github/workflows/ports_zephyr.yml +++ b/.github/workflows/ports_zephyr.yml @@ -42,6 +42,10 @@ jobs: # cache the "workspace" path: ./zephyrproject key: zephyr-workspace-${{ steps.versions.outputs.ZEPHYR }} + - name: ccache + uses: hendrikmuhs/ccache-action@v1.2 + with: + key: zephyr - name: Install packages run: source tools/ci.sh && ci_zephyr_setup - name: Install Zephyr diff --git a/tools/ci.sh b/tools/ci.sh index d4bfe4933..c67aeed0c 100755 --- a/tools/ci.sh +++ b/tools/ci.sh @@ -754,12 +754,15 @@ function ci_zephyr_setup { # Directories cached by GitHub Actions, mounted # into the container ZEPHYRPROJECT_DIR="$(pwd)/zephyrproject" + CCACHE_DIR="$(pwd)/.ccache" mkdir -p "${ZEPHYRPROJECT_DIR}" + mkdir -p "${CCACHE_DIR}" docker run --name zephyr-ci -d -it \ -v "$(pwd)":/micropython \ -v "${ZEPHYRPROJECT_DIR}":/zephyrproject \ + -v "${CCACHE_DIR}":/root/.cache/ccache \ -e ZEPHYR_SDK_INSTALL_DIR=/opt/toolchains/zephyr-sdk-${ZEPHYR_SDK_VERSION} \ -e ZEPHYR_TOOLCHAIN_VARIANT=zephyr \ -e ZEPHYR_BASE=/zephyrproject/zephyr \