From 4a28cbc0544512425977dda4ce81a9b6f0f34ad9 Mon Sep 17 00:00:00 2001 From: "P. Ottlinger" Date: Mon, 29 Jul 2024 22:07:30 +0200 Subject: [PATCH 1/3] Update README.md and use v4 of checkout action (#1437) Update examples to use latest available checkout action v4. --- README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index d1d2aefc0..3da1ae0cd 100644 --- a/README.md +++ b/README.md @@ -91,7 +91,7 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Cache Primes id: cache-primes @@ -122,7 +122,7 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Restore cached Primes id: cache-primes-restore @@ -229,7 +229,7 @@ Example: ```yaml steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - uses: actions/cache@v4 id: cache @@ -259,7 +259,7 @@ jobs: build-linux: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Cache Primes id: cache-primes @@ -286,7 +286,7 @@ jobs: build-windows: runs-on: windows-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Cache Primes id: cache-primes From e47d9f9ec8be3ac771b0b03c8e50f86e1c2fdea8 Mon Sep 17 00:00:00 2001 From: "Oleg A." Date: Wed, 31 Jul 2024 19:52:21 +0300 Subject: [PATCH 2/3] Explicit use bash for Windows (#1377) Co-authored-by: Josh Gross --- examples.md | 1 + 1 file changed, 1 insertion(+) diff --git a/examples.md b/examples.md index 1bcde911e..2a4999652 100644 --- a/examples.md +++ b/examples.md @@ -513,6 +513,7 @@ jobs: ```yaml - name: Get pip cache dir id: pip-cache + shell: bash run: | echo "dir=$(pip cache dir)" >> $GITHUB_OUTPUT From 40c3b67b2955d93d83b27ed164edd0756bc24049 Mon Sep 17 00:00:00 2001 From: r4mimu <52129983+fchimpan@users.noreply.github.com> Date: Thu, 1 Aug 2024 01:56:48 +0900 Subject: [PATCH 3/3] Fix cache-hit output when cache missed (#1404) * fix: cache-hit output * fix: Output chache hit timing * fix: Output chache hit timing --------- Co-authored-by: Josh Gross --- __tests__/restore.test.ts | 2 +- __tests__/restoreOnly.test.ts | 3 ++- dist/restore-only/index.js | 1 + dist/restore/index.js | 1 + src/restoreImpl.ts | 2 +- 5 files changed, 6 insertions(+), 3 deletions(-) diff --git a/__tests__/restore.test.ts b/__tests__/restore.test.ts index 250f7ef59..9b066eb9b 100644 --- a/__tests__/restore.test.ts +++ b/__tests__/restore.test.ts @@ -260,7 +260,7 @@ test("Fail restore when fail on cache miss is enabled and primary + restore keys ); expect(stateMock).toHaveBeenCalledWith("CACHE_KEY", key); - expect(setCacheHitOutputMock).toHaveBeenCalledTimes(0); + expect(setCacheHitOutputMock).toHaveBeenCalledTimes(1); expect(failedMock).toHaveBeenCalledWith( `Failed to restore cache entry. Exiting as fail-on-cache-miss is set. Input key: ${key}` diff --git a/__tests__/restoreOnly.test.ts b/__tests__/restoreOnly.test.ts index 81e5bcac1..840307df6 100644 --- a/__tests__/restoreOnly.test.ts +++ b/__tests__/restoreOnly.test.ts @@ -86,7 +86,8 @@ test("restore with no cache found", async () => { ); expect(outputMock).toHaveBeenCalledWith("cache-primary-key", key); - expect(outputMock).toHaveBeenCalledTimes(1); + expect(outputMock).toHaveBeenCalledWith("cache-hit", "false"); + expect(outputMock).toHaveBeenCalledTimes(2); expect(failedMock).toHaveBeenCalledTimes(0); expect(infoMock).toHaveBeenCalledWith( diff --git a/dist/restore-only/index.js b/dist/restore-only/index.js index 9a59ac0df..d2f36318a 100644 --- a/dist/restore-only/index.js +++ b/dist/restore-only/index.js @@ -59415,6 +59415,7 @@ function restoreImpl(stateProvider, earlyExit) { const lookupOnly = utils.getInputAsBool(constants_1.Inputs.LookupOnly); const cacheKey = yield cache.restoreCache(cachePaths, primaryKey, restoreKeys, { lookupOnly: lookupOnly }, enableCrossOsArchive); if (!cacheKey) { + core.setOutput(constants_1.Outputs.CacheHit, false.toString()); if (failOnCacheMiss) { throw new Error(`Failed to restore cache entry. Exiting as fail-on-cache-miss is set. Input key: ${primaryKey}`); } diff --git a/dist/restore/index.js b/dist/restore/index.js index 03a12b5a5..842eaa609 100644 --- a/dist/restore/index.js +++ b/dist/restore/index.js @@ -59415,6 +59415,7 @@ function restoreImpl(stateProvider, earlyExit) { const lookupOnly = utils.getInputAsBool(constants_1.Inputs.LookupOnly); const cacheKey = yield cache.restoreCache(cachePaths, primaryKey, restoreKeys, { lookupOnly: lookupOnly }, enableCrossOsArchive); if (!cacheKey) { + core.setOutput(constants_1.Outputs.CacheHit, false.toString()); if (failOnCacheMiss) { throw new Error(`Failed to restore cache entry. Exiting as fail-on-cache-miss is set. Input key: ${primaryKey}`); } diff --git a/src/restoreImpl.ts b/src/restoreImpl.ts index 74a366dd8..bb302ac20 100644 --- a/src/restoreImpl.ts +++ b/src/restoreImpl.ts @@ -51,6 +51,7 @@ export async function restoreImpl( ); if (!cacheKey) { + core.setOutput(Outputs.CacheHit, false.toString()); if (failOnCacheMiss) { throw new Error( `Failed to restore cache entry. Exiting as fail-on-cache-miss is set. Input key: ${primaryKey}` @@ -62,7 +63,6 @@ export async function restoreImpl( ...restoreKeys ].join(", ")}` ); - return; }