|
57 | 57 | SOURCE_LOGGER = logging.getLogger('pygeoprocessing') |
58 | 58 | SOURCE_LOGGER.setLevel(logging.DEBUG) |
59 | 59 | GOOGLE_STORAGE_URL = 'https://storage.googleapis.com' |
60 | | -TRUSTED_BUCKET = f'{GOOGLE_STORAGE_URL}/natcap-data-cache' |
| 60 | +DATAHUB_URL = 'https://data.naturalcapitalalliance.stanford.edu' |
| 61 | +TRUSTED_URL_PREFIXES = ( |
| 62 | + f'{GOOGLE_STORAGE_URL}/natcap-data-cache', |
| 63 | + f'{DATAHUB_URL}/download', |
| 64 | + 'https://data.naturalcapitalproject.stanford.edu/download', |
| 65 | +) |
61 | 66 | TARGET_FILE_BUCKET = 'gs://jupyter-app-temp-storage' |
62 | 67 | TARGET_BUCKET_SUBDIR = 'clipped' |
63 | | -TARGET_BUCKET_URL = f'{GOOGLE_STORAGE_URL}/jupyter-app-temp-storage/{TARGET_BUCKET_SUBDIR}' |
| 68 | +TARGET_DOWNLOAD_URL = f'{DATAHUB_URL}/download/{TARGET_BUCKET_SUBDIR}' |
64 | 69 | WORKSPACE_DIR = os.environ.get('WORKSPACE_DIR', os.getcwd()) |
65 | 70 | app.logger.info("WORKSPACE_DIR: %s", WORKSPACE_DIR) |
66 | 71 | pygeoprocessing.geoprocessing._LOGGING_PERIOD = 1.0 |
@@ -276,8 +281,8 @@ def clip(): |
276 | 281 | parameters = request.get_json() |
277 | 282 | app.logger.info(parameters) |
278 | 283 |
|
279 | | - if not parameters['file_url'].startswith(TRUSTED_BUCKET): |
280 | | - app.logger.error("Invalid source file, not in the known bucket: %s", |
| 284 | + if not parameters['file_url'].startswith(TRUSTED_URL_PREFIXES): |
| 285 | + app.logger.error("Invalid source file, not from a trusted host: %s", |
281 | 286 | parameters['file_url']) |
282 | 287 | raise ValueError("Invalid source file provided.") |
283 | 288 |
|
@@ -376,7 +381,7 @@ def clip(): |
376 | 381 | app.logger.info(f"Deleting local file {target_file_path}") |
377 | 382 | os.remove(target_file_path) |
378 | 383 |
|
379 | | - downloadable_raster_path = f"{TARGET_BUCKET_URL}/{bucket_filename}" |
| 384 | + downloadable_raster_path = f"{TARGET_DOWNLOAD_URL}/{bucket_filename}" |
380 | 385 | app.logger.info("Returning URL: %s", downloadable_raster_path) |
381 | 386 | return jsonify({'url': downloadable_raster_path, |
382 | 387 | 'size': filesize}) |
|
0 commit comments