Use S3 Transfer Acceleration for Omnibus Cache
Omnibus can use S3 to cache software assets used during the build, which our build system in DEV, uses that to speedup the process.
If we have a slow connection to S3, it will slow down considerately the whole thing. To fight that we can either enable S3 Transfer Acceleration, or host something like "MinIO" closer to where the build runs.
Unfortunately, there is no way to either change the endpoint or enable the S3 transfer acceleration flag to the aws-sdk
in omnibus.
From the NetFetcher
, the endpoint is hardcoded (you can only customize the bucket name):
And From the S3Cache
you can't set the :endpoint
configuration param nor can you define the :use_accelerate_endpoint
flag:
Proposal
Make :endpoint
configurable in S3Cache, and use it to generate the URL in NetFetcher
.
the new configuration in omnibus.rb
configuration file will be called: s3_endpoint