Commit Graph

96 Commits

Author SHA1 Message Date
Aiqiao Yan 16a133d9a7
Merge pull request #263 from actions/users/aiyan/allow-all-events
Allow all events to access cache
2020-05-15 14:13:16 -04:00
David Hadka bac1a40c81
Merge pull request #306 from actions/with-retries
Add retries to all API calls
2020-05-11 16:56:45 -05:00
Aiqiao Yan 4967c8e6c5 error handling for stream 2020-05-11 15:21:21 -04:00
Dave Hadka a0024e2bd0 Merge branch 'master' of http://github.com/actions/cache into with-retries 2020-05-11 12:55:11 -04:00
Dave Hadka 05b13411a0 Add retries to all API calls 2020-05-11 11:11:25 -04:00
Dave Hadka 354f70a56c Fix upload chunk retries 2020-05-11 10:49:48 -04:00
Aiqiao Yan 29b4783cc7 Merge fixes 2020-05-11 10:18:19 -04:00
Aiqiao Yan 2403bbedac Make sure ref is not null or empty 2020-05-11 10:16:07 -04:00
Aiqiao Yan ccc66f769e Allow all events to access cache 2020-05-11 10:16:07 -04:00
Aiqiao Yan 75cd46ec0c Use 30 as the long distance matching window to support both 32-bit and 64-bit OS 2020-05-01 14:25:15 -04:00
Aiqiao Yan a5d9a3b1a6 Address PR feedback 2020-05-01 10:01:43 -04:00
Aiqiao Yan 97f7baa910 Use zstd instead of gzip if available
Add zstd to cache versioning
2020-04-30 14:40:17 -04:00
David Hadka 9f07ee13de
Merge pull request #284 from actions/promisify-pipeline
Better error handling during download
2020-04-29 13:50:12 -05:00
Dave Hadka 1ed0c23029 Use promisify of stream.pipeline for downloading 2020-04-29 13:24:26 -04:00
David Hadka 54626c4a4f
Merge pull request #269 from actions/socket-timeout
Adds socket timeout and validate file size
2020-04-29 12:21:27 -05:00
Dave Hadka 48b62c1c52 Add comment for SocketTimeout 2020-04-28 21:31:41 -04:00
Dave Hadka 9bb13c71ec Fix lint issue, build .js files 2020-04-22 18:35:16 -04:00
Dave Hadka 8b2a57849f Adds socket timeout and validate file size 2020-04-22 18:23:41 -04:00
Aiqiao Yan 52046d1409 Use path.sep in path replace 2020-04-13 12:20:27 -04:00
Aiqiao Yan 4fa017f2b7 Fallback to GNU tar if BSD tar is unavailable 2020-04-10 15:33:43 -04:00
Josh Gross a4e3c3b64e
Add -P flag for tar creation 2020-04-08 10:58:38 -04:00
Ethan Dennis eb78578266
Cache multiple paths and add glob pattern support (#212)
* Allow for multiple line-delimited paths to cache

* Add initial minimatch support

* Use @actions/glob for pattern matching

* Cache multiple entries using --files-from tar input

remove known failing test

Quote tar paths

Add salt to test cache

Try reading input files from manifest

bump salt

Run test on macos

more testing

Run caching tests on 3 platforms

Run tests on self-hosted

Apparently cant reference hosted runners by name

Bump salt

wait for some time after save

more timing out

smarter waiting

Cache in tmp dir that won't be deleted

Use child_process instead of actions/exec

Revert tempDir hack

bump salt

more logging

More console logging

Use filepath to with cacheHttpClient

Test cache restoration

Revert temp dir hack

debug logging

clean up cache.yml testing

Bump salt

change debug output

build actions

* unit test coverage for caching multiple dirs

* Ensure there's a locateable test folder at homedir

* Clean up code

* Version cache with all inputs

* Unit test getCacheVersion

* Include keys in getCacheEntry request

* Clean import orders

* Use fs promises in actionUtils tests

* Update import order for to fix linter errors

* Fix remaining linter error

* Remove platform-specific test code

* Add lerna example for caching multiple dirs

* Lerna example updated to v2

Co-Authored-By: Josh Gross <joshmgross@github.com>

Co-authored-by: Josh Gross <joshmgross@github.com>
2020-03-20 16:02:11 -04:00
Henry Mercer cae64ca3cd
Attempt to delete the archive after extraction (#209)
This reduces storage space used once the Action has finished executing.
2020-03-18 09:43:56 -04:00
BSKY 6c471ae9f6
Add eslint-plugin-simple-import-sort (#219)
* Add eslint-plugin-simple-import-sort

* Update .eslintrc.json

* eslint --fix
2020-03-18 09:35:13 -04:00
Carlos Guerrero 8e9c167fd7
Small message change (#195)
* Small message change

Remove dot that generates confusion in wether that's part of the key or not

* Fix format-check

* Update tests
2020-02-25 14:16:36 -05:00
David Kale 4887979af8
proxy support (#166)
* Replace typed rest client with new http-client

* Send Content-Type: application/json and fix up some types

* Lint

* Consume @actions/http-client:1.0.5

* Consume @actions/http-client:1.0.6

* Dont send headers manually, http-client automatically will
2020-02-05 09:24:37 -05:00
David Hadka f9c9166ecb
Increase cache limit to 5 GBs (#168)
* Increase cache limit to 5 GBs

* Fix test to use new size limit

* Update src/save.ts

Co-Authored-By: Josh Gross <joshmgross@github.com>

Co-authored-by: Josh Gross <joshmgross@github.com>
2020-02-01 16:11:02 -05:00
Josh Gross c262ac0154 Fix number parsing issues 2020-01-06 14:06:24 -05:00
Josh Gross b45d91cc4b
Chunked Cache Upload APIs (#128)
* Initial pass at chunked upload apis

* Fix cacheEntry type

* Linting

* Fix download cache entry tests

* Linting tests

* Pull in fixes from testing branch

* Fix typo in ReserveCacheResponse

* Add test convering reserve cache failure

* Add retries to upload chunk

* PR feedback

* Format default chunk size

* Remove responses array
2020-01-06 13:05:50 -05:00
Josh Gross 3854a40aee
Use BSD tar on windows (#126)
* Use BSD tar on windows

* Linting

* Fallback to which tar if no system tar

* Fix formatting

* Bump prettier and typescript
2019-12-13 17:24:37 -05:00
Josh Gross 95c1798369
Remove validation failures and warning annotations (#108)
* Update warnings behavior

* Add void return type
2019-11-21 14:37:54 -05:00
Josh Gross 639f9d8b81
Mask download URL in logs (#110) 2019-11-21 14:37:32 -05:00
Josh Gross 84b3b283f0
Await io mkdirP (#100) 2019-11-15 10:25:57 -05:00
Josh Gross 8d14a2150b
Add unit tests for save (#98)
* Clean up args and arrange imports

* Arrange args in restore tests

* Add unit tests for save

* Use const instead of let (linting)
2019-11-14 17:14:16 -05:00
Josh Gross c0584c42d1
Add unit tests for actionUtils (#93)
* Add unit tests for actionUtils

* Fix file size on ubuntu and test name

* Remove unused import
2019-11-13 16:13:00 -05:00
Josh Gross bb828da54c
Format cache size and display on info (#85) 2019-11-13 11:00:46 -05:00
Josh Gross b7d83b4095
Provide better errors for unsupported event types (#68)
* Validate event type during restore

* PR Feedback

* Format

* Linting
2019-11-13 10:54:39 -05:00
Josh Gross 4657a5f525
Fix lint on Windows (#89) 2019-11-12 17:01:15 -05:00
BSKY fb50aa45ec Add initial eslint setup (#88) 2019-11-12 16:48:02 -05:00
Josh Gross 4b0709a0d5
Add unit tests for restore (#62)
* Move archive file size to utils

* Disable net connect with nock

* Add unit tests for restore

* Fix test names and test URL
2019-11-06 13:41:45 -05:00
Birunthan Mohanathas 30524a6fbd Tweak 'Cache not found' message (#54)
Previously the message was like this:

```
Cache not found for input keys: ["xxx",""]
```

Note the empty entry at the end because `String.prototype.split` results
in an array with one empty string if there was nothing to split.

Now it looks like:

```
Cache not found for input keys: xxx
```
2019-11-05 15:33:41 -05:00
Josh Gross b034b26a44
Bump cache limit to 400MB (#61) 2019-11-05 15:24:22 -05:00
Birunthan Mohanathas ce4a52af49 Stop warning when cache is not found (#40)
The cache not being found is a common situation so very visible warning
is a little too much.
2019-11-04 11:03:18 -05:00
Adam Dobrawy 25e0c8faac Remove cache checksum debug - close #24 (#26)
* Remove cache checksum debug - close #24

*  Remove cache checksum debug on save

* Fix formatting
2019-11-01 15:24:11 -04:00
Winter Jung 7058277028 Fix typo in error message (#29) 2019-11-01 10:35:38 -04:00
Josh Gross 37c45447e4 Initial commit 2019-10-30 14:48:49 -04:00