Skip to content

Commit b29a723

Browse files
committed
fix blob storage structure
1 parent d8bd77d commit b29a723

1 file changed

Lines changed: 18 additions & 10 deletions

File tree

src/storage/azure.py

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,19 @@ def __init__(self, storage_address: str, storage_username: str, storage_password
1818

1919
self.account_key = storage_password
2020

21-
# Dynamic container naming
22-
cluster_name = os.getenv("CLUSTER_NAME", "kob-dev")
23-
namespace = os.getenv("NAMESPACE", storage_username)
24-
self.container_name = f"{cluster_name}-{namespace}".lower().replace("_", "-")
25-
21+
namespace = "unknown-namespace"
22+
ns_path = "/var/run/secrets/kubernetes.io/serviceaccount/namespace"
23+
if os.path.exists(ns_path):
24+
with open(ns_path, "r") as f:
25+
namespace = f.read().strip()
26+
27+
cluster_name = os.getenv("CLUSTER_NAME")
28+
if not cluster_name:
29+
account_name = self.account_url.replace("https://", "").replace("http://", "").split(".")[0]
30+
cluster_name = account_name.replace("-backup", "").replace("backup", "")
31+
32+
self.blob_container = f"{cluster_name}-{namespace}".lower().replace("_", "-")
33+
2634
self.blob_service_client = BlobServiceClient(
2735
account_url=self.account_url,
2836
credential=self.account_key
@@ -35,11 +43,11 @@ def _ensure_container_exists(self):
3543
Creates the Azure container if it does not exist.
3644
"""
3745
try:
38-
print(f"info: checking or creating Azure container '{self.container_name}'...", flush=True)
39-
self.blob_service_client.create_container(name=self.container_name)
40-
print(f"info: container '{self.container_name}' successfully created.", flush=True)
46+
print(f"info: checking or creating Azure container '{self.blob_container}'...", flush=True)
47+
self.blob_service_client.create_container(name=self.blob_container)
48+
print(f"info: container '{self.blob_container}' successfully created.", flush=True)
4149
except ResourceExistsError:
42-
print(f"info: container '{self.container_name}' already exists. Reusing it.", flush=True)
50+
print(f"info: container '{self.blob_container}' already exists. Reusing it.", flush=True)
4351
except Exception as e:
4452
print(f"error: failed to verify/create Azure container: {e}", flush=True)
4553

@@ -51,7 +59,7 @@ def upload_stream(self, pvc_name: str, path: str, data_generator) -> bool:
5159

5260
try:
5361
blob_client = self.blob_service_client.get_blob_client(
54-
container=self.container_name,
62+
container=self.blob_container,
5563
blob=blob_name
5664
)
5765

0 commit comments

Comments
 (0)