mirror of
https://github.com/actions/cache.git
synced 2024-11-24 18:51:26 +01:00
Merge pull request #284 from actions/promisify-pipeline
Better error handling during download
This commit is contained in:
commit
9f07ee13de
3 changed files with 29 additions and 18 deletions
18
dist/restore/index.js
vendored
18
dist/restore/index.js
vendored
|
@ -2186,6 +2186,8 @@ const http_client_1 = __webpack_require__(539);
|
||||||
const auth_1 = __webpack_require__(226);
|
const auth_1 = __webpack_require__(226);
|
||||||
const crypto = __importStar(__webpack_require__(417));
|
const crypto = __importStar(__webpack_require__(417));
|
||||||
const fs = __importStar(__webpack_require__(747));
|
const fs = __importStar(__webpack_require__(747));
|
||||||
|
const stream = __importStar(__webpack_require__(794));
|
||||||
|
const util = __importStar(__webpack_require__(669));
|
||||||
const constants_1 = __webpack_require__(694);
|
const constants_1 = __webpack_require__(694);
|
||||||
const utils = __importStar(__webpack_require__(443));
|
const utils = __importStar(__webpack_require__(443));
|
||||||
const versionSalt = "1.0";
|
const versionSalt = "1.0";
|
||||||
|
@ -2271,13 +2273,10 @@ function getCacheEntry(keys) {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
exports.getCacheEntry = getCacheEntry;
|
exports.getCacheEntry = getCacheEntry;
|
||||||
function pipeResponseToStream(response, stream) {
|
function pipeResponseToStream(response, output) {
|
||||||
return __awaiter(this, void 0, void 0, function* () {
|
return __awaiter(this, void 0, void 0, function* () {
|
||||||
return new Promise(resolve => {
|
const pipeline = util.promisify(stream.pipeline);
|
||||||
response.message.pipe(stream).on("close", () => {
|
yield pipeline(response.message, output);
|
||||||
resolve();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
function downloadCache(archiveLocation, archivePath) {
|
function downloadCache(archiveLocation, archivePath) {
|
||||||
|
@ -4662,6 +4661,13 @@ run();
|
||||||
exports.default = run;
|
exports.default = run;
|
||||||
|
|
||||||
|
|
||||||
|
/***/ }),
|
||||||
|
|
||||||
|
/***/ 794:
|
||||||
|
/***/ (function(module) {
|
||||||
|
|
||||||
|
module.exports = require("stream");
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 826:
|
/***/ 826:
|
||||||
|
|
18
dist/save/index.js
vendored
18
dist/save/index.js
vendored
|
@ -2186,6 +2186,8 @@ const http_client_1 = __webpack_require__(539);
|
||||||
const auth_1 = __webpack_require__(226);
|
const auth_1 = __webpack_require__(226);
|
||||||
const crypto = __importStar(__webpack_require__(417));
|
const crypto = __importStar(__webpack_require__(417));
|
||||||
const fs = __importStar(__webpack_require__(747));
|
const fs = __importStar(__webpack_require__(747));
|
||||||
|
const stream = __importStar(__webpack_require__(794));
|
||||||
|
const util = __importStar(__webpack_require__(669));
|
||||||
const constants_1 = __webpack_require__(694);
|
const constants_1 = __webpack_require__(694);
|
||||||
const utils = __importStar(__webpack_require__(443));
|
const utils = __importStar(__webpack_require__(443));
|
||||||
const versionSalt = "1.0";
|
const versionSalt = "1.0";
|
||||||
|
@ -2271,13 +2273,10 @@ function getCacheEntry(keys) {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
exports.getCacheEntry = getCacheEntry;
|
exports.getCacheEntry = getCacheEntry;
|
||||||
function pipeResponseToStream(response, stream) {
|
function pipeResponseToStream(response, output) {
|
||||||
return __awaiter(this, void 0, void 0, function* () {
|
return __awaiter(this, void 0, void 0, function* () {
|
||||||
return new Promise(resolve => {
|
const pipeline = util.promisify(stream.pipeline);
|
||||||
response.message.pipe(stream).on("close", () => {
|
yield pipeline(response.message, output);
|
||||||
resolve();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
function downloadCache(archiveLocation, archivePath) {
|
function downloadCache(archiveLocation, archivePath) {
|
||||||
|
@ -4641,6 +4640,13 @@ module.exports = require("fs");
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
|
/***/ 794:
|
||||||
|
/***/ (function(module) {
|
||||||
|
|
||||||
|
module.exports = require("stream");
|
||||||
|
|
||||||
|
/***/ }),
|
||||||
|
|
||||||
/***/ 826:
|
/***/ 826:
|
||||||
/***/ (function(module, __unusedexports, __webpack_require__) {
|
/***/ (function(module, __unusedexports, __webpack_require__) {
|
||||||
|
|
||||||
|
|
|
@ -8,6 +8,8 @@ import {
|
||||||
} from "@actions/http-client/interfaces";
|
} from "@actions/http-client/interfaces";
|
||||||
import * as crypto from "crypto";
|
import * as crypto from "crypto";
|
||||||
import * as fs from "fs";
|
import * as fs from "fs";
|
||||||
|
import * as stream from "stream";
|
||||||
|
import * as util from "util";
|
||||||
|
|
||||||
import { Inputs, SocketTimeout } from "./constants";
|
import { Inputs, SocketTimeout } from "./constants";
|
||||||
import {
|
import {
|
||||||
|
@ -128,13 +130,10 @@ export async function getCacheEntry(
|
||||||
|
|
||||||
async function pipeResponseToStream(
|
async function pipeResponseToStream(
|
||||||
response: IHttpClientResponse,
|
response: IHttpClientResponse,
|
||||||
stream: NodeJS.WritableStream
|
output: NodeJS.WritableStream
|
||||||
): Promise<void> {
|
): Promise<void> {
|
||||||
return new Promise(resolve => {
|
const pipeline = util.promisify(stream.pipeline);
|
||||||
response.message.pipe(stream).on("close", () => {
|
await pipeline(response.message, output);
|
||||||
resolve();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export async function downloadCache(
|
export async function downloadCache(
|
||||||
|
|
Loading…
Reference in a new issue