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 ff3e19c7ea..eb85af6a36 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 d4bfe49336..c67aeed0ce 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 \