diff --git a/dinamis_sdk/s3.py b/dinamis_sdk/s3.py index d08cfdc52bd0e93ba18b1cc8d441fcb965f155a7..cc0cad7b456ef9090400af85361b72779143c8b0 100644 --- a/dinamis_sdk/s3.py +++ b/dinamis_sdk/s3.py @@ -199,17 +199,17 @@ def _generic_sign_urls( def sign_urls(urls: List[str]) -> Dict[str, str]: - """Sign multiple URLs for get.""" + """Sign multiple URLs for GET.""" return _generic_sign_urls(urls=urls, route="sign_urls") def sign_urls_put(urls: List[str]) -> Dict[str, str]: - """Sign multiple URLs for put.""" + """Sign multiple URLs for PUT.""" return _generic_sign_urls(urls=urls, route="sign_urls_put") def sign_url_put(url: str) -> str: - """Sign a single URL for put.""" + """Sign a single URL for PUT.""" urls = sign_urls_put([url]) return urls[url] @@ -532,7 +532,11 @@ def _generic_get_signed_urls( headers=headers, timeout=10 ) - response.raise_for_status() + try: + response.raise_for_status() + except Exception as e: + log.error(eval(response.content)) + raise(e) signed_url_batch = SignedURLBatch(**response.json()) if not signed_url_batch: @@ -551,7 +555,9 @@ def _generic_get_signed_urls( expiry=signed_url_batch.expiry, href=href ) - CACHE[url] = signed_url + if route == "sign_urls": + # Only put GET urls in cache + CACHE[url] = signed_url signed_urls[url] = signed_url log.debug( "Got signed urls %s in %s seconds", diff --git a/dinamis_sdk/utils.py b/dinamis_sdk/utils.py index 663d49de51e0af93ccec4adb71aeb46d744c2ffa..439eba0635eedd960809ab12af7c45b1369f371a 100644 --- a/dinamis_sdk/utils.py +++ b/dinamis_sdk/utils.py @@ -6,12 +6,13 @@ import appdirs import requests import urllib3.util.retry from .settings import Settings +import sys # Settings settings = Settings() # Logger -logging.basicConfig() +logging.basicConfig(stream=sys.stdout) log = logging.getLogger("dinamis_sdk") log.setLevel(level=os.environ.get('LOGLEVEL', 'INFO').upper()) diff --git a/pyproject.toml b/pyproject.toml index ed9603fcc42d8ce45ed10549ce1e885627b9e085..502f757d2376653008fd8bc7e90f0c4fba1621f3 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta" [project] name = "dinamis-sdk" authors = [{name = "inrae", email = "remi.cresson@inrae.fr"}] -version = "0.3.2" +version = "0.3.3" description = "DINAMIS SDK for Python" requires-python = ">=3.7" dependencies = [