Commit Graph
76 Commits
Author SHA1 Message Date
Rob Herley 7bc2c5798c add md5 and use b64 for digest encodings 2022-05-05 09:26:38 -04:00
Rob Herley f6721d87d4 misc pr feedback 2022-04-27 22:24:16 +00:00
Rob Herley 202bbdbdc2 update crc header key 2022-04-27 22:22:35 +00:00
Rob Herley 5d4a0ae3ad crc: update test header data 2022-04-26 23:21:31 +00:00
Rob Herley 66f8014402 crc: update headers & digest stream 2022-04-26 22:59:56 +00:00
Rob Herley bb08acb405 crc: move tbl out of class, more tests 2022-04-26 17:31:17 +00:00
Rob Herley 2b24c67e85 add crc64 & tests 2022-04-26 17:13:40 +00:00
Rob Herley b78f9d835a artifact: tests for stream digest util 2022-04-05 09:31:49 -04:00
Rob Herley 4b6a894ba4 add digest header for uploads 2022-04-04 17:54:15 -04:00
Jonathan Tamsut 2ecf52a3d7 Merge pull request #1009 from actions/jtamsut/update-artifact-file-version
Update `lockfileVersion` for artifact package
2022-03-01 12:47:16 -08:00
Jonathan Tamsut 5e09e33d74 Bump major version 2022-03-01 12:36:05 -08:00
Jonathan Tamsut 9b1f49ab24 update lockfileVersion for artifact 2022-03-01 12:10:10 -08:00
Konrad Pabjan a84553182e 0.6.1 release (#964) 2021-12-14 16:01:55 -05:00
Zoran Regvart 9d6767c399 fix: drop support for named pipes on Windows (#962)
Seems that folk are having issues with uploading 0-byte files from
Windows agents. This effectively removes the support for Windows for
uploading from named files that, due to `isFIFO` returning `false` on
Windows for named pipes created using MSYS2's `mkfifo` command, resorted
to checking if the file size is 0 - a common trait of named pipes.

See https://github.com/actions/upload-artifact/issues/281
2021-12-14 15:50:50 -05:00
Konrad Pabjan 455aabdd18 [Artifacts] Prep for @actions/artifact 0.6.0 release (#958)
* actions-artifact-0.6.0 release

* Fix lint issue

* Update RELEASES.md
2021-12-06 18:39:23 -05:00
Konrad Pabjan 41b89b7ea6 [Artifacts] More detailed information for chunked uploads (#957)
* More detailed information for chunked uploads

* Run npm format
2021-12-06 16:48:14 -05:00
Konrad Pabjan 39a378198d [Artifacts] Exempt certain types of files from gzip compression (#956)
* Exempt certain types of files from gzip compression

* Fix lint issue
2021-12-06 16:47:44 -05:00
Konrad Pabjan 30feac4dc5 Check for newlines and carriage return in artifact paths and name (#951)
* Check for newlines and carriage return in artifact paths and name

* Fix linting issue

* Update comments

* Add comment about spacing

* Remove extra space
2021-12-01 16:31:37 -05:00
Konrad Pabjanandcampersau bf144288cb Updates to logging for artifact uploads (#949)
* More details logs during artifact upload

* extra logging

* Updates to artifact logging + clarifications around upload size

* Fix linting errors

* Update packages/artifact/src/internal/artifact-client.ts

Co-authored-by: campersau <buchholz.bastian@googlemail.com>

Co-authored-by: campersau <buchholz.bastian@googlemail.com>
2021-11-30 12:53:24 -05:00
campersau a85e73c3eb Reset processedCount when downloading all artifacts (#889) 2021-11-29 17:28:03 -05:00
Ichinose Shogo f132cd5a9f artifact: @types/tmp should be devDependencies (#860) 2021-11-29 17:22:33 -05:00
Zoran Regvart b34bb89807 Support upload from named pipes (#748)
Named pipes report file size as 0, which leads to reading the whole
content into memory (0 is less than 64K). This adds additional check to
make sure that the passed in path is not a named pipe, and in that case
opts for the create-temp-file-to-gzip code path.

When running on GitHub Actions infrastructure on `windows` node, named
pipes can be created using `mkfifo` from MSYS2. In that case `fs.Stats`s
`isFIFO()` returns `false`, and not `true` as expected. This case is
detected by `process.platform` being `win32` and the passed file having
length of 0.

As a side note, when MSYS2's `mkfifo` is run, a pipe file is created:

```
prw-rw-rw- 1 User None  0 Mar 31 12:58 pipe
```

If `fs.stat` is invoked at this point `ENOENT` error will be thrown. As
soon as the pipe is written to, this pipe file is replaced by two same-
named files:

```
-rw-r--r-- 1 User None  0 Mar 31 13:00 pipe
-rw-r--r-- 1 User None  0 Mar 31 13:00 pipe
```

And at this point `fs.stat` `isFIFO()` returns `false`. Even though the
file acts as a named pipe.
2021-11-29 17:19:02 -05:00
Brian Cristante 88cfcccd96 Bump artifact package version to v0.5.2 (#845)
* bump version in package*.json

* changelog
2021-06-16 09:37:06 -04:00
Brian Cristante 77d96ef7df Retry artifact uploads on HTTP 500 (#833)
* Retry on 500

* bump package version

* fix tests

* Remove spurious change

* fix another test

* Roll back package version
2021-06-04 17:09:30 -04:00
Thomas Boop ef0fa675fa Re-enable the audit tools step and update dependencies (#815)
* update package versions

* run audit

* fix eslint config

* linter updates

* re-enable audit

* update timeouts test

* pass done into callback

* fix format
2021-05-21 09:19:40 -04:00
Konrad Pabjan cb22c5e7ce Bump artifact package version (#761) 2021-04-06 13:49:15 -04:00
Konrad Pabjan 2259e57a71 @actions/artifact 0.5.1 release (#760)
* Bump @actions/http-client to latest for artifact package

* Remove typescript libs to fix failing imports
2021-04-06 12:44:56 -04:00
Konrad Pabjan cf1d64fd9e Retry all http calls for artifact upload and download (#675)
* Retry all http calls for artifact upload and download

* Extra debug information

* Fix lint

* Always read response body

* PR Feedback

* Change error message if patch call fails

* Add exponential backoff when retrying

* Rework tests and add diagnostic info if exception thrown

* Fix lint

* fix lint error for real this time

* PR cleanup

* 0.5.0 @actions/artifact release

* Display diagnostic info if non-retryable code is hit
2020-12-18 21:40:50 +01:00
Konrad Pabjan d7c866b0f5 actions/artifact 0.4.2 release (#673)
* actions/artifact 0.4.2

* Update releases note
2020-12-11 17:43:12 +01:00
Chris Sidi 3198814def Merge pull request #661 from yacaovsnc/main
Retry artifact download when response stream is truncated (continued)
2020-12-04 13:10:40 -05:00
Yang CaoandChris Sidi 6f33e4c7b0 Close destination steam before reject
Co-authored-by: Chris Sidi <hashtagchris@github.com>
2020-12-04 11:03:17 -05:00
Yang Cao 2c4f1a3166 style change, refactor arg sequence 2020-12-04 09:41:00 -05:00
Yang Cao 2b5da11156 pipeResponseToFile already throws when reading truncated stream 2020-12-04 09:19:58 -05:00
Yang Cao 760a39afb9 Try close stream before unlink 2020-12-03 13:34:59 -05:00
Yang Cao bd9c0f996d Always print skip validation log 2020-12-03 13:09:43 -05:00
Yang Cao 1e10fa415c Add some debugging statements 2020-12-03 12:40:37 -05:00
Yang Cao 09e68f92cd More styling fix 2020-12-03 10:57:04 -05:00
Yang Cao 8f05cccf8e Fix styling 2020-12-03 10:33:10 -05:00
Yang Cao 9d3d4bec1b Adding retry when we received 200
If we received 200, we will attempt to download the stream. If the
stream is gzipped, gzip should throw an error when trying to decompress
the stream; or if the stream is truncated, the received bytes should be
different from the value set in content-length header.
2020-12-03 10:15:12 -05:00
Chris Sidi 61e11bd168 More error handling 2020-12-03 10:12:44 -05:00
Chris Sidi d26929d028 Retry artifact download when response stream is truncated 2020-12-03 10:12:44 -05:00
Chris Sidi 0a0169da7d Remove spyon, use readable stream to test pipeResponseToFile (#651)
* Remove spyon, use readable stream to test pipeResponseToFile

* Check file contents
2020-11-30 12:12:12 -05:00
Thomas Boop 89260944d9 Update @actions/core in remaining toolkit packages (#636)
* Update to latest @actions/core version

* Bump release notes for new versions

* Add correct pr #
2020-11-13 16:51:15 -05:00
Thomas Boop e67e3164d5 swap to file commands (#587)
* swap to file commands

* swap to require
2020-09-30 15:46:54 +02:00
Yang Cao 53a6f99290 Release preparation of artifact 0.4.0 (#578) 2020-09-18 19:06:53 +02:00
Yang CaoandKonrad Pabjan da436eaab9 Add an option to specify retention days for artifacts (#575)
* Add an option to specify retention days for artifacts

* Validate against settings exposed as env var to give early feedback

* Fix lint

* Add tests and addressing feedback

* Update packages/artifact/__tests__/upload.test.ts

Co-authored-by: Konrad Pabjan <konradpabjan@github.com>

* Update packages/artifact/README.md

Co-authored-by: Konrad Pabjan <konradpabjan@github.com>

* Update packages/artifact/src/internal/utils.ts

Co-authored-by: Konrad Pabjan <konradpabjan@github.com>

* Update packages/artifact/__tests__/util.test.ts

Co-authored-by: Konrad Pabjan <konradpabjan@github.com>

Co-authored-by: Konrad Pabjan <konradpabjan@github.com>
2020-09-18 11:30:00 -04:00
Thomas Boop 5d7c069a8e Add License.md to all npm packages (#548)
* Add License.md to all npm packages
2020-08-25 16:26:50 -04:00
Ross Brodbeck c8fa648f49 zeit renamed to vercel 2020-08-21 07:32:09 -04:00
Konrad Pabjan a0e6867306 @actions/artifact 0.3.5 2020-08-04 17:11:50 +02:00
Konrad Pabjan 975f43d6c7 Retry on 413 (#540) 2020-08-04 16:57:38 +02:00