1
0
Fork 0

Update implementation-details.md

pull/377/merge
Konrad Pabjan 2020-03-20 18:42:18 +01:00 committed by GitHub
parent b94f6a1340
commit cb7022ea2c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 7 additions and 1 deletions

View File

@ -1,5 +1,11 @@
# Implementation Details # Implementation Details
Warning: Implementation details may change at any time without notice. This is meant to serve as a reference to help users understand the package.
## Upload/Compression flow
![image](https://user-images.githubusercontent.com/16109154/77190819-38685d80-6ada-11ea-8281-4703ff8cc025.png)
## Proxy support ## Proxy support
This package uses the `@actions/http-client` NPM package internally which supports proxied requests out of the box. This package uses the `@actions/http-client` NPM package internally which supports proxied requests out of the box.
@ -40,4 +46,4 @@ TCP connections consist of an input and output buffer to manage what is sent and
### Non Concurrent calls ### Non Concurrent calls
Both `upload-http-client` and `download-http-client` do not instantiate or create any HTTP clients (the `HttpManager` has that responsibility). If an HTTP call has to be made that does not require the `keep-alive` header (such as when calling `listArtifacts` or `patchArtifactSize`), the first `HttpClient` in the `HttpManager` is used. The number of available clients is equal to the upload or download concurrency and there will always be at least one available. Both `upload-http-client` and `download-http-client` do not instantiate or create any HTTP clients (the `HttpManager` has that responsibility). If an HTTP call has to be made that does not require the `keep-alive` header (such as when calling `listArtifacts` or `patchArtifactSize`), the first `HttpClient` in the `HttpManager` is used. The number of available clients is equal to the upload or download concurrency and there will always be at least one available.