Use util.promisify instead of manually constructing promise

This commit is contained in:
Edoardo Pirovano 2022-08-16 14:42:13 +01:00
parent 8a4437ae33
commit 016a5e3bae
No known key found for this signature in database
GPG key ID: 047556B5D93FFE28
3 changed files with 26 additions and 32 deletions

View file

@ -1,5 +1,6 @@
import * as fs from "fs";
import * as path from "path";
import { promisify } from "util";
import * as cache from "@actions/cache";
import getFolderSize from "get-folder-size";
@ -188,21 +189,17 @@ export async function getTotalCacheSize(
trapCaches: Partial<Record<Language, string>>,
logger: Logger
): Promise<number> {
const sizes = await Promise.all(
Object.values(trapCaches).map(async (cacheDir) => {
return new Promise<number>((resolve) => {
getFolderSize(cacheDir, (err, size) => {
if (err) {
logger.warning(`Error getting size of ${cacheDir}: ${err}`);
resolve(0);
} else {
resolve(size);
}
});
});
})
);
return sizes.reduce((a, b) => a + b, 0);
try {
const sizes = await Promise.all(
Object.values(trapCaches).map(async (cacheDir) => {
return promisify<string, number>(getFolderSize)(cacheDir);
})
);
return sizes.reduce((a, b) => a + b, 0);
} catch (e) {
logger.warning(`Encountered an error while getting TRAP cache size: ${e}`);
return 0;
}
}
async function cacheKey(