From 7b2d641190b2fae0f244ea0fe78aa29c596e6f82 Mon Sep 17 00:00:00 2001 From: Claudio Ortolina Date: Thu, 19 Dec 2024 20:32:30 +0000 Subject: [PATCH] Include OTP and Elixir version in cache keys --- .github/workflows/test_and_deploy.yml | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/.github/workflows/test_and_deploy.yml b/.github/workflows/test_and_deploy.yml index 89d56e75..98f06610 100644 --- a/.github/workflows/test_and_deploy.yml +++ b/.github/workflows/test_and_deploy.yml @@ -8,6 +8,7 @@ jobs: steps: - uses: actions/checkout@v4 - uses: erlef/setup-beam@v1 + id: setup-beam with: version-type: strict version-file: .tool-versions @@ -18,9 +19,9 @@ jobs: cache-name: cache-elixir-deps with: path: deps - key: ${{ runner.os }}-mix-${{ env.cache-name }}-${{ hashFiles('**/mix.lock') }} + key: ${{ runner.os }}-otp-${{ steps.setup-beam.outputs.otp-version }}-elixir-${{ steps.setup-beam.outputs.elixir-version }}-mix-${{ env.cache-name }}-${{ hashFiles('**/mix.lock') }} restore-keys: | - ${{ runner.os }}-mix-${{ env.cache-name }}- + ${{ runner.os }}-otp-${{ steps.setup-beam.outputs.otp-version }}-elixir-${{ steps.setup-beam.outputs.elixir-version }}-mix-${{ env.cache-name }}- # Step: Define how to cache the `_build` directory. After the first run, # this speeds up tests runs a lot. This includes not re-compiling our @@ -32,10 +33,10 @@ jobs: cache-name: cache-compiled-build with: path: _build - key: ${{ runner.os }}-mix-${{ env.cache-name }}-${{ hashFiles('**/mix.lock') }} + key: ${{ runner.os }}-otp-${{ steps.setup-beam.outputs.otp-version }}-elixir-${{ steps.setup-beam.outputs.elixir-version }}-mix-${{ env.cache-name }}-${{ hashFiles('**/mix.lock') }} restore-keys: | - ${{ runner.os }}-mix-${{ env.cache-name }}- - ${{ runner.os }}-mix- + ${{ runner.os }}-otp-${{ steps.setup-beam.outputs.otp-version }}-elixir-${{ steps.setup-beam.outputs.elixir-version }}-mix-${{ env.cache-name }}- + ${{ runner.os }}-otp-${{ steps.setup-beam.outputs.otp-version }}-elixir-${{ steps.setup-beam.outputs.elixir-version }}-mix- # Step: Conditionally bust the cache when job is re-run. # Sometimes, we may have issues with incremental builds that are fixed by