Skip to content

Commit 47311d3

Browse files
committed
Update cache key in GitHub Actions workflows
Replaces the cache key for SwiftPM build artifacts in test workflows to use a hash of Package.resolved and Package.swift files. This improves cache accuracy and ensures builds are properly invalidated when dependencies or package configuration change.
1 parent c1c5581 commit 47311d3

File tree

4 files changed

+8
-8
lines changed

4 files changed

+8
-8
lines changed

.github/workflows/common-shell-tests-commonshell-bench-tests.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
uses: actions/cache/restore@v4
2424
with:
2525
path: .build
26-
key: swiftpm-build-${{ runner.os }}-${{ github.event.pull_request.base.sha || github.event.after }}
26+
key: swiftpm-build-${{ runner.os }}-${{ hashFiles('**/Package.resolved', '**/Package.swift') }}
2727
restore-keys: |
2828
swiftpm-build-${{ runner.os }}-
2929
@@ -35,7 +35,7 @@ jobs:
3535
uses: actions/cache/save@v4
3636
with:
3737
path: .build
38-
key: swiftpm-build-${{ runner.os }}-${{ github.event.pull_request.base.sha || github.event.after }}
38+
key: swiftpm-build-${{ runner.os }}-${{ hashFiles('**/Package.resolved', '**/Package.swift') }}
3939

4040
- name: Run CommonShellBenchTests
4141
run: swift test --skip-build --enable-code-coverage --parallel --filter '^CommonShellBenchTests\.'

.github/workflows/common-shell-tests-commonshell-cli-tests.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
uses: actions/cache/restore@v4
2424
with:
2525
path: .build
26-
key: swiftpm-build-${{ runner.os }}-${{ github.event.pull_request.base.sha || github.event.after }}
26+
key: swiftpm-build-${{ runner.os }}-${{ hashFiles('**/Package.resolved', '**/Package.swift') }}
2727
restore-keys: |
2828
swiftpm-build-${{ runner.os }}-
2929
@@ -35,7 +35,7 @@ jobs:
3535
uses: actions/cache/save@v4
3636
with:
3737
path: .build
38-
key: swiftpm-build-${{ runner.os }}-${{ github.event.pull_request.base.sha || github.event.after }}
38+
key: swiftpm-build-${{ runner.os }}-${{ hashFiles('**/Package.resolved', '**/Package.swift') }}
3939

4040
- name: Run CommonShellCLITests
4141
run: swift test --skip-build --enable-code-coverage --parallel --filter '^CommonShellCLITests\.'

.github/workflows/common-shell-tests-commonshell-interactive-tests.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
uses: actions/cache/restore@v4
2424
with:
2525
path: .build
26-
key: swiftpm-build-${{ runner.os }}-${{ github.event.pull_request.base.sha || github.event.after }}
26+
key: swiftpm-build-${{ runner.os }}-${{ hashFiles('**/Package.resolved', '**/Package.swift') }}
2727
restore-keys: |
2828
swiftpm-build-${{ runner.os }}-
2929
@@ -35,7 +35,7 @@ jobs:
3535
uses: actions/cache/save@v4
3636
with:
3737
path: .build
38-
key: swiftpm-build-${{ runner.os }}-${{ github.event.pull_request.base.sha || github.event.after }}
38+
key: swiftpm-build-${{ runner.os }}-${{ hashFiles('**/Package.resolved', '**/Package.swift') }}
3939

4040
- name: Run CommonShellInteractiveTests
4141
run: swift test --skip-build --enable-code-coverage --parallel --filter '^CommonShellInteractiveTests\.'

.github/workflows/common-shell-tests-commonshell-tests.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ jobs:
2828
uses: actions/cache/restore@v4
2929
with:
3030
path: .build
31-
key: swiftpm-build-${{ runner.os }}-${{ github.event.pull_request.base.sha || github.event.after }}
31+
key: swiftpm-build-${{ runner.os }}-${{ hashFiles('**/Package.resolved', '**/Package.swift') }}
3232
restore-keys: |
3333
swiftpm-build-${{ runner.os }}-
3434
@@ -40,7 +40,7 @@ jobs:
4040
uses: actions/cache/save@v4
4141
with:
4242
path: .build
43-
key: swiftpm-build-${{ runner.os }}-${{ github.event.pull_request.base.sha || github.event.after }}
43+
key: swiftpm-build-${{ runner.os }}-${{ hashFiles('**/Package.resolved', '**/Package.swift') }}
4444

4545
- name: Run CommonShellTests
4646
run: swift test --skip-build --enable-code-coverage --parallel --filter '^CommonShellTests\.'

0 commit comments

Comments
 (0)