rasterio opens file from AWS S3 bucket on local machine, but can't find file when deployed to Google App Engine
judson.buescher@...
Hello,
I'm trying to run a python flask app, that opens a file hosted on an S3 bucket and analyzes the data. When I deploy the flask app on my local host, it runs like expected. Once I deploy the app to the cloud, it suddenly cannot find the file. I feel like this might be a bug, but i'm too afraid to post in the github. I'll attach the relevant snippet of code, and the error I'm receiving in the GCP Logs. I apologize for terrible formatting as I'm unaware of how to do it properly in this forum. and here's the error:
|
|
Sean Gillies
Apologies for the late reply. There may be a bug, yes, but there are more likely sources of trouble. Can you explain more about how you are installing the rasterio package on GCP and how you are configuring your AWS credentials?
On Thu, Jul 23, 2020 at 7:06 AM <judson.buescher@...> wrote:
-- Sean Gillies
|
|
judson.buescher@...
Hi Sean,
rasterio==1.1.5
in the requirements.txt. For the credentials I’ve tried a couple different ways. I’ve tried setting them using
os.environ['GS_SECRET_ACCESS_KEY'] = secret_access_key os.environ['GS_ACCESS_KEY_ID'] = access_key
I’ve also tried
session = boto3.Session(aws_access_key_id=access_key, aws_secret_access_key=secret_access_key)
and then using that session object when I open the raster file. Was there any other info you’d like?
From: <main@rasterio.groups.io> on behalf of "Sean Gillies via groups.io" <sean.gillies@...>
Apologies for the late reply. There may be a bug, yes, but there are more likely sources of trouble. Can you explain more about how you are installing the rasterio package on GCP and how you are configuring your AWS credentials?
On Thu, Jul 23, 2020 at 7:06 AM <judson.buescher@...> wrote:
--
Sean Gillies
|
|
Sean Gillies
Hi Judson, On Wed, Aug 12, 2020 at 9:42 AM Judson Buescher <judson.buescher@...> wrote:
If the source data for your App Engine app is on AWS, you'll need to make sure that you're providing AWS keys to access it. You'll want etc. in your environment, not GS_SECRET_ACCESS_KEY (etc.). I've never used boto3 on App Engine and wouldn't recommend that approach of configuring AWS for GDAL and rasterio. Sean Gillies
|
|
Judson Buescher <judson.buescher@...>
Sean,
From: <main@rasterio.groups.io> on behalf of "Sean Gillies via groups.io" <sean@...>
Hi Judson,
On Wed, Aug 12, 2020 at 9:42 AM Judson Buescher <judson.buescher@...> wrote:
If the source data for your App Engine app is on AWS, you'll need to make sure that you're providing AWS keys to access it. You'll want
AWS_SECRET_ACCESS_KEY = secret_access_key etc.
in your environment, not GS_SECRET_ACCESS_KEY (etc.). I've never used boto3 on App Engine and wouldn't recommend that approach of configuring AWS for GDAL and rasterio.
-- Sean Gillies
|
|
Judson Buescher <judson.buescher@...>
Hi Sean,
From: <main@rasterio.groups.io> on behalf of "Sean Gillies via groups.io" <sean@...>
Hi Judson,
On Wed, Aug 12, 2020 at 9:42 AM Judson Buescher <judson.buescher@...> wrote:
If the source data for your App Engine app is on AWS, you'll need to make sure that you're providing AWS keys to access it. You'll want
AWS_SECRET_ACCESS_KEY = secret_access_key etc.
in your environment, not GS_SECRET_ACCESS_KEY (etc.). I've never used boto3 on App Engine and wouldn't recommend that approach of configuring AWS for GDAL and rasterio.
-- Sean Gillies
|
|
Sean Gillies
Hi Judson, On Fri, Aug 21, 2020 at 9:16 AM Judson Buescher <judson.buescher@...> wrote:
Sean Gillies
|
|