From 0f810ad45a58337c90d1c5e34ab3556bd81f1723 Mon Sep 17 00:00:00 2001 From: Josh Gross Date: Tue, 5 Nov 2019 15:42:18 -0500 Subject: [PATCH] Release v1.0.1 --- README.md | 8 +++- examples.md | 107 +++++++++++++++++++++++----------------------- package-lock.json | 22 +++++----- package.json | 2 +- src/restore.ts | 7 ++- src/save.ts | 4 +- 6 files changed, 79 insertions(+), 71 deletions(-) diff --git a/README.md b/README.md index ccf4bc5..e65cea6 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,11 @@ This GitHub Action allows caching dependencies and build outputs to improve workflow execution time. -GitHub Actions status +GitHub Actions status + +## Documentation + +See ["Caching dependencies to speed up workflows"](https://help.github.com/github/automating-your-workflow-with-github-actions/caching-dependencies-to-speed-up-workflows). ## Usage @@ -59,7 +63,7 @@ See [Examples](examples.md) ## Cache Limits -Individual caches are limited to 200MB and a repository can have up to 2GB of caches. Once the 2GB limit is reached, older caches will be evicted based on when the cache was last accessed. Caches that are not accessed within the last week will also be evicted. +Individual caches are limited to 400MB and a repository can have up to 2GB of caches. Once the 2GB limit is reached, older caches will be evicted based on when the cache was last accessed. Caches that are not accessed within the last week will also be evicted. ## Skipping steps based on cache-hit diff --git a/examples.md b/examples.md index ca571d8..b844b41 100644 --- a/examples.md +++ b/examples.md @@ -1,48 +1,48 @@ # Examples -- [Node - npm](#node---npm) -- [Node - Yarn](#node---yarn) - [C# - Nuget](#c---nuget) +- [Elixir - Mix](#elixir---mix) +- [Go - Modules](#go---modules) - [Java - Gradle](#java---gradle) - [Java - Maven](#java---maven) -- [Swift, Objective-C - Carthage](#swift-objective-c---carthage) -- [Swift, Objective-C - CocoaPods](#swift-objective-c---cocoapods) +- [Node - npm](#node---npm) +- [Node - Yarn](#node---yarn) - [Ruby - Gem](#ruby---gem) -- [Go - Modules](#go---modules) -- [Elixir - Mix](#elixir---mix) - [Rust - Cargo](#rust---cargo) +- [Swift, Objective-C - Carthage](#swift-objective-c---carthage) +- [Swift, Objective-C - CocoaPods](#swift-objective-c---cocoapods) -## Node - npm +## C# - Nuget +Using [NuGet lock files](https://docs.microsoft.com/nuget/consume-packages/package-references-in-project-files#locking-dependencies): ```yaml - uses: actions/cache@v1 with: - path: node_modules - key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} + path: ~/.nuget/packages + key: ${{ runner.os }}-nuget-${{ hashFiles('**/packages.lock.json') }} restore-keys: | - ${{ runner.os }}-node- + ${{ runner.os }}-nuget- ``` -## Node - Yarn - +## Elixir - Mix ```yaml - uses: actions/cache@v1 with: - path: ~/.cache/yarn - key: ${{ runner.os }}-yarn-${{ hashFiles(format('{0}{1}', github.workspace, '/yarn.lock')) }} + path: deps + key: ${{ runner.os }}-mix-${{ hashFiles(format('{0}{1}', github.workspace, '/mix.lock')) }} restore-keys: | - ${{ runner.os }}-yarn- + ${{ runner.os }}-mix- ``` -## C# - Nuget -Using [NuGet lock files](https://docs.microsoft.com/nuget/consume-packages/package-references-in-project-files#locking-dependencies): +## Go - Modules + ```yaml - uses: actions/cache@v1 with: - path: ~/.nuget/packages - key: ${{ runner.os }}-nuget-${{ hashFiles('**/packages.lock.json') }} + path: ~/go/pkg/mod + key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }} restore-keys: | - ${{ runner.os }}-nuget- + ${{ runner.os }}-go- ``` ## Java - Gradle @@ -67,26 +67,26 @@ Using [NuGet lock files](https://docs.microsoft.com/nuget/consume-packages/packa ${{ runner.os }}-maven- ``` -## Swift, Objective-C - Carthage +## Node - npm ```yaml -uses: actions/cache@v1 - with: - path: Carthage - key: ${{ runner.os }}-carthage-${{ hashFiles('**/Cartfile.resolved') }} - restore-keys: | - ${{ runner.os }}-carthage- +- uses: actions/cache@v1 + with: + path: node_modules + key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} + restore-keys: | + ${{ runner.os }}-node- ``` -## Swift, Objective-C - CocoaPods +## Node - Yarn ```yaml - uses: actions/cache@v1 with: - path: Pods - key: ${{ runner.os }}-pods-${{ hashFiles('**/Podfile.lock') }} + path: ~/.cache/yarn + key: ${{ runner.os }}-yarn-${{ hashFiles(format('{0}{1}', github.workspace, '/yarn.lock')) }} restore-keys: | - ${{ runner.os }}-pods- + ${{ runner.os }}-yarn- ``` ## Ruby - Gem @@ -100,30 +100,9 @@ uses: actions/cache@v1 ${{ runner.os }}-gem- ``` -## Go - Modules - -```yaml -- uses: actions/cache@v1 - with: - path: ~/go/pkg/mod - key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }} - restore-keys: | - ${{ runner.os }}-go- -``` - -## Elixir - Mix -```yaml -- uses: actions/cache@v1 - with: - path: deps - key: ${{ runner.os }}-mix-${{ hashFiles(format('{0}{1}', github.workspace, '/mix.lock')) }} - restore-keys: | - ${{ runner.os }}-mix- -``` - ## Rust - Cargo -``` +```yaml - name: Cache cargo registry uses: actions/cache@v1 with: @@ -140,3 +119,25 @@ uses: actions/cache@v1 path: target key: ${{ runner.os }}-cargo-build-target-${{ hashFiles('**/Cargo.lock') }} ``` + +## Swift, Objective-C - Carthage + +```yaml +- uses: actions/cache@v1 + with: + path: Carthage + key: ${{ runner.os }}-carthage-${{ hashFiles('**/Cartfile.resolved') }} + restore-keys: | + ${{ runner.os }}-carthage- +``` + +## Swift, Objective-C - CocoaPods + +```yaml +- uses: actions/cache@v1 + with: + path: Pods + key: ${{ runner.os }}-pods-${{ hashFiles('**/Podfile.lock') }} + restore-keys: | + ${{ runner.os }}-pods- +``` diff --git a/package-lock.json b/package-lock.json index 59a5bb6..a3dc4ea 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "cache", - "version": "1.0.0", + "version": "1.0.1", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -1105,9 +1105,9 @@ } }, "commander": { - "version": "2.20.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.1.tgz", - "integrity": "sha512-cCuLsMhJeWQ/ZpsFTbE765kvVfoeSddc4nU3up4fV+fDBcfUXnbITJ+JzhkdjzOqhURjZgujxaioam4RM9yGUg==", + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true, "optional": true }, @@ -2318,9 +2318,9 @@ "dev": true }, "handlebars": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.4.2.tgz", - "integrity": "sha512-cIv17+GhL8pHHnRJzGu2wwcthL5sb8uDKBHvZ2Dtu5s1YNt0ljbzKbamnc+gr69y7bzwQiBdr5+hOpRd5pnOdg==", + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.5.1.tgz", + "integrity": "sha512-C29UoFzHe9yM61lOsIlCE5/mQVGrnIOrOq7maQl76L7tYPCgC1og0Ajt6uWnX4ZTxBPnjw+CUvawphwCfJgUnA==", "dev": true, "requires": { "neo-async": "^2.6.0", @@ -4981,13 +4981,13 @@ "dev": true }, "uglify-js": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.0.tgz", - "integrity": "sha512-W+jrUHJr3DXKhrsS7NUVxn3zqMOFn0hL/Ei6v0anCIMoKC93TjcflTagwIHLW7SfMFfiQuktQyFVCFHGUE0+yg==", + "version": "3.6.7", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.7.tgz", + "integrity": "sha512-4sXQDzmdnoXiO+xvmTzQsfIiwrjUCSA95rSP4SEd8tDb51W2TiDOlL76Hl+Kw0Ie42PSItCW8/t6pBNCF2R48A==", "dev": true, "optional": true, "requires": { - "commander": "~2.20.0", + "commander": "~2.20.3", "source-map": "~0.6.1" } }, diff --git a/package.json b/package.json index 84b7733..a235bd7 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "cache", - "version": "1.0.0", + "version": "1.0.1", "private": true, "description": "Cache dependencies and build outputs", "main": "dist/restore/index.js", diff --git a/src/restore.ts b/src/restore.ts index b115b08..060c8d4 100644 --- a/src/restore.ts +++ b/src/restore.ts @@ -20,7 +20,10 @@ async function run() { const primaryKey = core.getInput(Inputs.Key, { required: true }); core.saveState(State.CacheKey, primaryKey); - const restoreKeys = core.getInput(Inputs.RestoreKeys).split("\n"); + const restoreKeys = core + .getInput(Inputs.RestoreKeys) + .split("\n") + .filter(x => x !== ""); const keys = [primaryKey, ...restoreKeys]; core.debug("Resolved Keys:"); @@ -52,7 +55,7 @@ async function run() { const cacheEntry = await cacheHttpClient.getCacheEntry(keys); if (!cacheEntry) { core.info( - `Cache not found for input keys: ${JSON.stringify(keys)}.` + `Cache not found for input keys: ${keys.join(", ")}.` ); return; } diff --git a/src/save.ts b/src/save.ts index f688e70..69e44cf 100644 --- a/src/save.ts +++ b/src/save.ts @@ -54,12 +54,12 @@ async function run() { core.debug(`Tar Path: ${tarPath}`); await exec(`"${tarPath}"`, args); - const fileSizeLimit = 200 * 1024 * 1024; // 200MB + const fileSizeLimit = 400 * 1024 * 1024; // 400MB const archiveFileSize = fs.statSync(archivePath).size; core.debug(`File Size: ${archiveFileSize}`); if (archiveFileSize > fileSizeLimit) { core.warning( - `Cache size of ${archiveFileSize} bytes is over the 200MB limit, not saving cache.` + `Cache size of ${archiveFileSize} bytes is over the 400MB limit, not saving cache.` ); return; }