oasis-data-manager 0.1.2__py2.py3-none-any.whl → 0.1.3__py2.py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- __version__ = '0.1.2'
1
+ __version__ = '0.1.3'
@@ -178,6 +178,7 @@ class AwsS3Storage(BaseStorage):
178
178
  "s3_additional_kwargs": s3_additional_kwargs,
179
179
  "client_kwargs": {
180
180
  "endpoint_url": self.endpoint_url,
181
+ "region_name": self.region_name,
181
182
  },
182
183
  }
183
184
 
@@ -105,6 +105,8 @@ class BaseStorage(object):
105
105
  :return: filename string
106
106
  :rtype str
107
107
  """
108
+ if suffix.startswith('.'):
109
+ suffix = suffix[1:]
108
110
  return "{}.{}".format(uuid.uuid4().hex, suffix)
109
111
 
110
112
  def _is_valid_url(self, url):
@@ -246,6 +248,13 @@ class BaseStorage(object):
246
248
  :return: Absolute filepath to stored Object
247
249
  :rtype str
248
250
  """
251
+ # null ref given
252
+ if not reference:
253
+ if required:
254
+ raise MissingInputsException(reference)
255
+ else:
256
+ return None
257
+
249
258
  target = os.path.abspath(
250
259
  os.path.join(output_path, subdir) if subdir else output_path
251
260
  )
@@ -298,17 +307,23 @@ class BaseStorage(object):
298
307
  if not reference:
299
308
  return None
300
309
 
301
- ext = "tar.gz" if not suffix else suffix
302
- filename = filename if filename else self._get_unique_filename(ext)
303
- storage_path = os.path.join(subdir, filename) if subdir else filename
310
+ if os.path.isfile(reference):
311
+ ext = "".join(Path(reference).suffixes) if not suffix else suffix
312
+ filename = filename if filename else self._get_unique_filename(ext)
313
+ storage_path = subdir if subdir else ''
314
+ self.fs.mkdirs(os.path.dirname(storage_path), exist_ok=True)
315
+ storage_location = os.path.join(storage_path, filename)
304
316
 
305
- self.fs.mkdirs(os.path.dirname(storage_path), exist_ok=True)
317
+ self.logger.info("Store file: {} -> {}".format(reference, storage_location))
318
+ self.fs.put(reference, storage_location)
319
+ return storage_location
306
320
 
307
- if os.path.isfile(reference):
308
- self.logger.info("Store file: {} -> {}".format(reference, storage_path))
309
- self.fs.put(reference, storage_path)
310
- return storage_path
311
321
  elif os.path.isdir(reference):
322
+ ext = "tar.gz" if not suffix else suffix
323
+ filename = filename if filename else self._get_unique_filename(ext)
324
+ storage_path = os.path.join(subdir, filename) if subdir else filename
325
+ self.fs.mkdirs(os.path.dirname(storage_path), exist_ok=True)
326
+
312
327
  self.logger.info("Store dir: {} -> {}".format(reference, storage_path))
313
328
  with tempfile.NamedTemporaryFile() as f:
314
329
  self.compress(f.name, reference, arcname)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: oasis-data-manager
3
- Version: 0.1.2
3
+ Version: 0.1.3
4
4
  Summary: UNKNOWN
5
5
  Home-page: https://github.com/OasisLMF/OasisDataManager
6
6
  Author: Oasis LMF
@@ -18,18 +18,17 @@ License-File: LICENSE
18
18
  Requires-Dist: fastparquet
19
19
  Requires-Dist: fsspec >=2023.12.2
20
20
  Requires-Dist: pandas
21
- Requires-Dist: typing
22
21
  Requires-Dist: typing-extensions
23
22
  Provides-Extra: extra
24
23
  Requires-Dist: adlfs ; extra == 'extra'
25
24
  Requires-Dist: boto3 ; extra == 'extra'
26
- Requires-Dist: dask ; extra == 'extra'
25
+ Requires-Dist: dask <=2024.1.1 ; extra == 'extra'
27
26
  Requires-Dist: dask-geopandas ; extra == 'extra'
28
27
  Requires-Dist: dask-sql ; extra == 'extra'
29
28
  Requires-Dist: distributed ; extra == 'extra'
30
29
  Requires-Dist: geopandas ; extra == 'extra'
31
30
  Requires-Dist: pyogrio ; extra == 'extra'
32
- Requires-Dist: s3fs >=2023.9.0 ; extra == 'extra'
31
+ Requires-Dist: s3fs >=2023.12.2 ; extra == 'extra'
33
32
 
34
33
  UNKNOWN
35
34
 
@@ -1,4 +1,4 @@
1
- oasis_data_manager/__init__.py,sha256=mdp2CftfqYbdKtP-eWv1z7rAUycYv6X1ntXSMUf8Kss,22
1
+ oasis_data_manager/__init__.py,sha256=uZsygMXMKRw-7qhWojAjnpm8GFPXU92xW6XA8O5GwFY,22
2
2
  oasis_data_manager/config.py,sha256=_qx2Mu5n0Jx3W5SKCiqLr1SPdWLrbFv_B82r6Eosp_k,534
3
3
  oasis_data_manager/complex/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
4
  oasis_data_manager/complex/complex.py,sha256=8oomV9WyLsa8sz8aMzlwv4naKCGOL3UdSlYQJxUFqCk,5382
@@ -17,12 +17,12 @@ oasis_data_manager/filestore/config.py,sha256=N0hSfPpRpej7uWGV54MEEH_0vvdpcgo3fZ
17
17
  oasis_data_manager/filestore/filestore.py,sha256=eaQGAer7Q9KM4B3bq9WmZAtjFdj9aRef_E3rI2i0dOk,2615
18
18
  oasis_data_manager/filestore/log.py,sha256=8l54LoOJiOG2pr4o93LzMocjH7dHcsOp14JWJ_MrqHQ,693
19
19
  oasis_data_manager/filestore/backends/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
20
- oasis_data_manager/filestore/backends/aws_s3.py,sha256=te2rVQl6n4xr4X-xQv68gDNQDIdTh9ar-FNI4JUtQJg,10587
20
+ oasis_data_manager/filestore/backends/aws_s3.py,sha256=uV8HfyJ_VuyCyl6oN0qIxpbhxhQ1aGAG4UfjyETyHP0,10636
21
21
  oasis_data_manager/filestore/backends/azure_abfs.py,sha256=Lo2aBBQsFPJJEb9svm1-W43Gz2g4LCaHlM-9mVXDhzg,5354
22
- oasis_data_manager/filestore/backends/base.py,sha256=aj__0KsmnVbXTHYSA_qlrIe5pxImSZ14dPMzskdNzJc,12971
22
+ oasis_data_manager/filestore/backends/base.py,sha256=O-JmKpUKiXIsqR_PBmMT4_NNBYMzsp9r04q8u4iWjp0,13597
23
23
  oasis_data_manager/filestore/backends/local.py,sha256=MEX_CvwhsDfv9lvBjc8CdaDXaN53l9onQHmOgKjoJcg,1242
24
- oasis_data_manager-0.1.2.dist-info/LICENSE,sha256=qr-PXl5mSpeUk-A7RzYcH0dhR93hhgVK8SW9mzco0Ao,1517
25
- oasis_data_manager-0.1.2.dist-info/METADATA,sha256=R5rXMfHrg3pAZ6wjYTjqScEiMBYvv32fFrQamt9LjZM,1110
26
- oasis_data_manager-0.1.2.dist-info/WHEEL,sha256=-G_t0oGuE7UD0DrSpVZnq1hHMBV9DD2XkS5v7XpmTnk,110
27
- oasis_data_manager-0.1.2.dist-info/top_level.txt,sha256=qMC39T9UvDCPbNJLVtgu8h6f7c4KJYel7SnIpz62wsU,19
28
- oasis_data_manager-0.1.2.dist-info/RECORD,,
24
+ oasis_data_manager-0.1.3.dist-info/LICENSE,sha256=qr-PXl5mSpeUk-A7RzYcH0dhR93hhgVK8SW9mzco0Ao,1517
25
+ oasis_data_manager-0.1.3.dist-info/METADATA,sha256=P05T_lkfvsQzfKhjjYG3KE68jE44WxkJBRvj9w8aOUs,1100
26
+ oasis_data_manager-0.1.3.dist-info/WHEEL,sha256=DZajD4pwLWue70CAfc7YaxT1wLUciNBvN_TTcvXpltE,110
27
+ oasis_data_manager-0.1.3.dist-info/top_level.txt,sha256=qMC39T9UvDCPbNJLVtgu8h6f7c4KJYel7SnIpz62wsU,19
28
+ oasis_data_manager-0.1.3.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.42.0)
2
+ Generator: bdist_wheel (0.43.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py2-none-any
5
5
  Tag: py3-none-any