I am trying to use AWS lambda to process some files stored in an S3 bucket using GDAL.
I have used information in the previous question enter link description here to test that I can read the file using /vsis3/
The difficulty has been to get GDAL working in AWS Lambda which is a Linux RHEL, which meant I have had to build from source.
I used the following config for that ./configure --disabled-shared --enable-static
Which gave me the executables that I can include in my code zip to upload to Lambda.
I have tested the GDAL executable using a local file within my code zip and that works, eg gdalinfo image.tif
However, trying to use
gdalinfo --config AWS_REGION "region" --config AWS_ACCESS_KEY_ID "KEY" --config AWS_SECRET_ACCESS_KEY "SECRET"/vsis3/bucket/key
causes an error message of
Unable to open datasource `/vsis3/bucket/key' with the following drivers.
Does anyone know a solution?
My fear is that /vsis3/ requires something that I am not using in the build process
EDITS
I managed to change my GDAL build to include curl (--with-curl) and have successfully used that from lambda to the S3 file using
gdalinfo "/vsicurl/image.tif"
But the vsis3 still fails
CURL_CA_BUNDLE
on the lambda? Grep cpl_vsi.h doc for more info.