digitalocean / packer-plugin-digitalocean

Packer plugin for DigitalOcean Builder
https://developer.hashicorp.com/packer/integrations/digitalocean/digitalocean
Mozilla Public License 2.0
20 stars 12 forks source link

Initiate all transfers before blocking on completion #125

Closed andrewsomething closed 4 months ago

andrewsomething commented 4 months ago

Currently, when we distribute images to all regions, we do so one at a time. After each transfer is initiated, we wait until it is completed to start the next one. These transfers can happen in parallel. This would have a few benefits. Large images transferred to many regions may take quite awhile to complete. Currently, if we timeout, the build may fail before initiating all transfers. Also, if a single transfer errors, the others are never initiated.

Surfaced from this related issue: https://github.com/digitalocean/packer-plugin-digitalocean/issues/122#issuecomment-1934183863

Davis-A commented 4 months ago

Hello,

As a suggestion, could this be implemented (or have an option to) not wait for transfer, and instead issue the transfer requests and exit successfully? Reasoning being with large images (ours are >15GB) it's quite likely it will take longer than the 20 minute timeout. @wolfsage's example in #122 is our desired behaviour.