diff --git a/dist/index.js b/dist/index.js index 374211f..23ab0a1 100644 --- a/dist/index.js +++ b/dist/index.js @@ -118881,16 +118881,15 @@ function run() { core.info(`- ${artifact.name} (ID: ${artifact.id}, Size: ${artifact.size}, Expected Digest: ${artifact.digest})`); }); } - const downloadPromises = artifacts.map(artifact => ({ - name: artifact.name, - promise: artifact_1.default.downloadArtifact(artifact.id, Object.assign(Object.assign({}, options), { path: isSingleArtifactDownload || inputs.mergeMultiple - ? resolvedPath - : path.join(resolvedPath, artifact.name), expectedHash: artifact.digest })) - })); - const chunkedPromises = (0, exports.chunk)(downloadPromises, PARALLEL_DOWNLOADS); - for (const chunk of chunkedPromises) { - const chunkPromises = chunk.map(item => item.promise); - const results = yield Promise.all(chunkPromises); + const chunkedArtifacts = (0, exports.chunk)(artifacts, PARALLEL_DOWNLOADS); + for (const chunk of chunkedArtifacts) { + const chunkPromises = chunk.map(artifact => ({ + name: artifact.name, + promise: artifact_1.default.downloadArtifact(artifact.id, Object.assign(Object.assign({}, options), { path: isSingleArtifactDownload || inputs.mergeMultiple + ? resolvedPath + : path.join(resolvedPath, artifact.name), expectedHash: artifact.digest })) + })); + const results = yield Promise.all(chunkPromises.map(item => item.promise)); for (let i = 0; i < results.length; i++) { const outcome = results[i]; const artifactName = chunk[i].name; diff --git a/src/download-artifact.ts b/src/download-artifact.ts index 5cc6b17..5cc7b81 100644 --- a/src/download-artifact.ts +++ b/src/download-artifact.ts @@ -169,22 +169,20 @@ export async function run(): Promise { }) } - const downloadPromises = artifacts.map(artifact => ({ - name: artifact.name, - promise: artifactClient.downloadArtifact(artifact.id, { - ...options, - path: - isSingleArtifactDownload || inputs.mergeMultiple - ? resolvedPath - : path.join(resolvedPath, artifact.name), - expectedHash: artifact.digest - }) - })) - - const chunkedPromises = chunk(downloadPromises, PARALLEL_DOWNLOADS) - for (const chunk of chunkedPromises) { - const chunkPromises = chunk.map(item => item.promise) - const results = await Promise.all(chunkPromises) + const chunkedArtifacts = chunk(artifacts, PARALLEL_DOWNLOADS) + for (const chunk of chunkedArtifacts) { + const chunkPromises = chunk.map(artifact => ({ + name: artifact.name, + promise: artifactClient.downloadArtifact(artifact.id, { + ...options, + path: + isSingleArtifactDownload || inputs.mergeMultiple + ? resolvedPath + : path.join(resolvedPath, artifact.name), + expectedHash: artifact.digest + }) + })) + const results = await Promise.all(chunkPromises.map(item => item.promise)) for (let i = 0; i < results.length; i++) { const outcome = results[i]