1
0
Fork 0

adding lock

pull/1700/head
Vallie Joseph 2024-03-28 17:53:08 +00:00
parent c7de68f215
commit fe0c0de7db
1 changed files with 20 additions and 22 deletions

View File

@ -39,41 +39,39 @@ export async function createZipUploadStream(
zip.on('finish', zipFinishCallback) zip.on('finish', zipFinishCallback)
zip.on('end', zipEndCallback) zip.on('end', zipEndCallback)
const uploadFilePromises = uploadSpecification.map(async file => { for (const file of uploadSpecification) {
return new Promise((resolve, reject) => { await new Promise((resolve, reject) => {
if (file.sourcePath !== null) { if (file.sourcePath !== null) {
// Add a normal file to the zip
zip.entry( zip.entry(
createReadStream(file.sourcePath), createReadStream(file.sourcePath),
{name: file.destinationPath}, {name: file.destinationPath},
(err, entry) => { function (err, entry) {
core.debug(`Entry is: ${entry}`)
if (err) reject(err) if (err) reject(err)
resolve(entry) else resolve(entry)
} }
) )
} else { } else {
zip.entry(null, {name: file.destinationPath}, (err, entry) => { zip.entry(null, {name: file.destinationPath}, function (err, entry) {
core.debug(`Entry is: ${entry}`)
if (err) reject(err) if (err) reject(err)
resolve(entry) else resolve(entry)
}) })
} }
}) })
}) }
await Promise.all(uploadFilePromises).then(result => { zip.finalize()
core.debug(`Zip result is ${result}`) const bufferSize = getUploadChunkSize()
zip.finalize() const zipUploadStream = new ZipUploadStream(bufferSize)
const bufferSize = getUploadChunkSize() core.debug(
const zipUploadStream = new ZipUploadStream(bufferSize) `Zip write high watermark value ${zipUploadStream.writableHighWaterMark}`
core.debug( )
`Zip write high watermark value ${zipUploadStream.writableHighWaterMark}` core.debug(
) `Zip read high watermark value ${zipUploadStream.readableHighWaterMark}`
core.debug( )
`Zip read high watermark value ${zipUploadStream.readableHighWaterMark}` return zipUploadStream
)
return zipUploadStream
})
throw new Error('An error has occurred during zip creation for the artifact')
// zip.pipe(zipUploadStream)
} }
// eslint-disable-next-line @typescript-eslint/no-explicit-any // eslint-disable-next-line @typescript-eslint/no-explicit-any