Skip to content
Snippets Groups Projects
Commit 9bfe4fe2 authored by Fabian Wachsmann's avatar Fabian Wachsmann
Browse files

merged conflicts

parents e11d288c 74e3cc53
No related branches found
No related tags found
No related merge requests found
...@@ -3,6 +3,7 @@ name: tzisdemo ...@@ -3,6 +3,7 @@ name: tzisdemo
channels: channels:
- conda-forge - conda-forge
dependencies: dependencies:
- python==3.10
- pip - pip
- intake - intake
- intake-esm - intake-esm
......
#!/bin/sh #!/bin/sh
conda install python=3.10 cdo python-cdo -c conda-forge -y micromamba install python=3.10 cdo python-cdo -c conda-forge -y
cd files cd files
for file in $(ls -1 ./ ); do for file in $(ls -1 ./ ); do
echo $file
sha=$(cat $file | grep sha256 | cut -d ':' -f 2); sha=$(cat $file | grep sha256 | cut -d ':' -f 2);
wget -q https://swift.dkrz.de/v1/dkrz_0b2a0dcc-1430-4a8a-9f25-a6cb8924d92b/tzis-tests_input-files/${sha} ; wget -q https://swift.dkrz.de/v1/dkrz_0b2a0dcc-1430-4a8a-9f25-a6cb8924d92b/tzis-tests_input-files/${sha} ;
mv $sha $file ; mv $sha $file ;
......
...@@ -3,7 +3,7 @@ import xarray ...@@ -3,7 +3,7 @@ import xarray
from .provenance import Provenance from .provenance import Provenance
from .rechunker import calc_chunk_length, calc_other_dim_chunks from .rechunker import calc_chunk_length, calc_other_dim_chunks
import glob import glob
from copy import deepcopy import copy
OPEN_MFDATASET_KWARGS = dict( OPEN_MFDATASET_KWARGS = dict(
decode_cf=True, decode_cf=True,
...@@ -69,7 +69,7 @@ class open_mfdataset_optimize: ...@@ -69,7 +69,7 @@ class open_mfdataset_optimize:
self.mf_dset = None self.mf_dset = None
self.original_size = None self.original_size = None
self.provenance = None self.provenance = None
default_kwargs=deepcopy(OPEN_MFDATASET_KWARGS) default_kwargs=copy.deepcopy(OPEN_MFDATASET_KWARGS)
if verbose: if verbose:
print("Resetting disk size and compression ratio") print("Resetting disk size and compression ratio")
...@@ -77,6 +77,8 @@ class open_mfdataset_optimize: ...@@ -77,6 +77,8 @@ class open_mfdataset_optimize:
imf = mf imf = mf
if type(mf) == str: if type(mf) == str:
imf = glob.glob(mf) imf = glob.glob(mf)
if not imf:
imf = copy.deepcopy(mf)
if verbose: if verbose:
print("Opening test dataset") print("Opening test dataset")
......
...@@ -34,7 +34,7 @@ class Provenance(object): ...@@ -34,7 +34,7 @@ class Provenance(object):
def __init__(self, url): def __init__(self, url):
from .tzis import __version__ as tzis_version from .tzis import __version__ as tzis_version
self._identifier = None self._identifier = uuid.uuid4()
self.tzis_version = tzis_version self.tzis_version = tzis_version
self.url = url self.url = url
...@@ -44,10 +44,18 @@ class Provenance(object): ...@@ -44,10 +44,18 @@ class Provenance(object):
self.url = os.path.dirname(os.path.dirname(url)) self.url = os.path.dirname(os.path.dirname(url))
self.container = os.path.basename(os.path.dirname(url)) self.container = os.path.basename(os.path.dirname(url))
self.prefix = os.path.basename(url) self.prefix = os.path.basename(url)
if len(self.url.split('/')) < 6:
if len(self.url.split('/')) < 5:
raise ValueError(f"The provided {url} does not include a container")
self.url = os.path.dirname(url)
self.container = os.path.basename(url)
self.prefix = self._identifier
# Create an empyty prov document # Create an empyty prov document
self.doc = prov.ProvDocument() self.doc = prov.ProvDocument()
self._identifier = uuid.uuid4()
self.tracking_id = str(uuid.uuid4()) self.tracking_id = str(uuid.uuid4())
# Declaring namespaces for various prefixes # Declaring namespaces for various prefixes
self.doc.add_namespace(TZIS) self.doc.add_namespace(TZIS)
......
...@@ -77,6 +77,7 @@ def mapper_mkdirs(url, container, prefix=None): ...@@ -77,6 +77,7 @@ def mapper_mkdirs(url, container, prefix=None):
conn = Connection( conn = Connection(
preauthurl=getenv("OS_STORAGE_URL"), preauthtoken=getenv("OS_AUTH_TOKEN") preauthurl=getenv("OS_STORAGE_URL"), preauthtoken=getenv("OS_AUTH_TOKEN")
) )
print(f"Check if {container} is in {url}. Otherwise make it.")
listings = fsmap.fs.listdir(url) listings = fsmap.fs.listdir(url)
if not container in [a["name"].split("/")[-1] for a in listings]: if not container in [a["name"].split("/")[-1] for a in listings]:
conn.put_container(container) conn.put_container(container)
...@@ -259,6 +260,7 @@ def toggle_public(container): ...@@ -259,6 +260,7 @@ def toggle_public(container):
acl = conn.head_container(container).get("x-container-read", "") acl = conn.head_container(container).get("x-container-read", "")
if ".r:*" in acl: if ".r:*" in acl:
acl = acl.replace(".r:*", "") acl = acl.replace(".r:*", "")
acl = acl.replace(".rlistings", "")
else: else:
acl = ",".join([acl, ".r:*,.rlistings"]) acl = ",".join([acl, ".r:*,.rlistings"])
acl = ",".join(sorted(filter(None, set(acl.split(","))))) acl = ",".join(sorted(filter(None, set(acl.split(",")))))
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment