@@ -13199,13 +13199,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
13199
13199
step((generator = generator.apply(thisArg, _arguments || [])).next());
13200
13200
});
13201
13201
};
13202
- var __asyncValues = (this && this.__asyncValues) || function (o) {
13203
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
13204
- var m = o[Symbol.asyncIterator], i;
13205
- return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
13206
- function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
13207
- function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
13208
- };
13209
13202
var __importDefault = (this && this.__importDefault) || function (mod) {
13210
13203
return (mod && mod.__esModule) ? mod : { "default": mod };
13211
13204
};
@@ -13244,53 +13237,49 @@ class Downloader {
13244
13237
}
13245
13238
}
13246
13239
getDownloadUrl(version, os) {
13247
- var e_1, _a;
13248
13240
return __awaiter(this, void 0, void 0, function* () {
13249
- let response;
13250
13241
try {
13251
- if (version === 'latest') {
13252
- response = yield this.githubClient.repos.getLatestRelease(Object.assign({}, Downloader.trivyRepository)) ;
13253
- version = response.data.tag_name.replace(/v/, '');
13254
- }
13255
- else {
13256
- response = yield this.githubClient.repos.getReleaseByTag(Object.assign(Object.assign({}, Downloader.trivyRepository), { tag: `v${version}` }));
13242
+ const response = yield this.getAssets(version);
13243
+ const filename = `trivy_${response.version}_${os}-64bit.tar.gz` ;
13244
+ for (const asset of response.assets) {
13245
+ if (asset.name === filename) {
13246
+ return asset.browser_download_url;
13247
+ }
13257
13248
}
13249
+ throw new Error();
13258
13250
}
13259
13251
catch (error) {
13260
- throw new Error(`The Trivy version that you specified does not exist.
13252
+ const errorMsg = `
13253
+ Cloud not be found a Trivy asset that you specified.
13261
13254
Version: ${version}
13262
- `);
13255
+ OS: ${os}
13256
+ `;
13257
+ throw new Error(errorMsg);
13263
13258
}
13264
- const filename = `trivy_${version}_${os}-64bit.tar.gz` ;
13265
- try {
13266
- for (var _b = __asyncValues(response.data.assets), _c; _c = yield _b.next(), !_c.done; ) {
13267
- const asset = _c.value;
13268
- if (asset.name === filename) {
13269
- return asset.browser_download_url;
13270
- }
13271
- }
13259
+ }) ;
13260
+ }
13261
+ getAssets(version ) {
13262
+ return __awaiter(this, void 0, void 0, function* () {
13263
+ let response;
13264
+ if (version === 'latest') {
13265
+ response = yield this.githubClient.repos.getLatestRelease(Object.assign({}, Downloader.trivyRepository));
13266
+ version = response.data.tag_name.replace(/v/, '');
13272
13267
}
13273
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
13274
- finally {
13275
- try {
13276
- if (_c && !_c.done && (_a = _b.return)) yield _a.call(_b);
13277
- }
13278
- finally { if (e_1) throw e_1.error; }
13268
+ else {
13269
+ response = yield this.githubClient.repos.getReleaseByTag(Object.assign(Object.assign({}, Downloader.trivyRepository), { tag: `v${version}` }));
13279
13270
}
13280
- const errorMsg = `Cloud not be found Trivy asset that You specified.
13281
- Version: ${version}
13282
- OS: ${os}`;
13283
- throw new Error(errorMsg);
13271
+ return { assets: response.data.assets, version };
13284
13272
});
13285
13273
}
13286
13274
downloadTrivyCmd(downloadUrl, savedPath = '.') {
13287
13275
return __awaiter(this, void 0, void 0, function* () {
13288
13276
const response = yield node_fetch_1.default(downloadUrl);
13289
13277
return new Promise((resolve, reject) => {
13278
+ const gunzip = zlib_1.default.createGunzip();
13290
13279
const extract = tar_1.default.extract({ C: savedPath }, ['trivy']);
13291
13280
response.body
13292
13281
.on('error', reject)
13293
- .pipe(zlib_1.default.createGunzip() )
13282
+ .pipe(gunzip )
13294
13283
.on('error', reject)
13295
13284
.pipe(extract)
13296
13285
.on('error', reject)
0 commit comments