async waitForUpload()

in lambdas/static-asset-uploader/index.js [235:265]


  async waitForUpload (readPromises, uploadPromises, bucketName) {
    console.log(`readPromises length: ${readPromises.length}`)

    let state = 'read'

    try {
      await Promise.all(readPromises)
      state = 'upload'

      console.log('All read promises resolved.')
      console.log(`uploadPromises length: ${uploadPromises.length}`)

      uploadPromises.push(this.addConfigFile(bucketName))
      await Promise.all(uploadPromises)
    } catch (error) {
      if (state === 'read') {
        console.log('Failed to read file with error:', error)
      } else {
        console.log(`Failed to upload to bucket with name ${bucketName}:`, error)
      }

      return this.notifyCFNThatUploadFailed(error)
    }

    console.log('All upload promises resolved.')
    console.log(`Succeeded in uploading to bucket ${bucketName}.`)
    return this.notifyCFNThatUploadSucceeded({
      status: 'upload_success',
      bucket: bucketName
    })
  }