From 5448366e863c747854b9c94f983233c43dff6146 Mon Sep 17 00:00:00 2001
From: Charlotte Hausman <chausman@nrao.edu>
Date: Thu, 15 Dec 2022 15:56:55 -0500
Subject: [PATCH] ensure directory check is valid for lustre (especially vlass
 path naming)

---
 apps/cli/executables/pexable/casa_envoy/casa_envoy/palaver.py | 2 +-
 apps/cli/executables/pexable/conveyor/conveyor/conveyor.py    | 4 ++--
 apps/cli/executables/pexable/conveyor/conveyor/retrieve.py    | 4 ++--
 .../pexable/ingest_envoy/ingest_envoy/solicitor.py            | 4 ++--
 .../pexable/ws_annihilator/ws_annihilator/annihilator.py      | 2 +-
 5 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/apps/cli/executables/pexable/casa_envoy/casa_envoy/palaver.py b/apps/cli/executables/pexable/casa_envoy/casa_envoy/palaver.py
index 6230cbe28..076fd4a74 100644
--- a/apps/cli/executables/pexable/casa_envoy/casa_envoy/palaver.py
+++ b/apps/cli/executables/pexable/casa_envoy/casa_envoy/palaver.py
@@ -53,7 +53,7 @@ def _get_settings(cwd: pathlib.Path, args: list) -> dict:
 
     parent_path = cwd
     root_dir = str(cwd.parent)
-    processing_dir = str(cwd.stem)
+    processing_dir = str(cwd.name)
 
     metadata = args[0]
     ppr = args[1]
diff --git a/apps/cli/executables/pexable/conveyor/conveyor/conveyor.py b/apps/cli/executables/pexable/conveyor/conveyor/conveyor.py
index 08498521e..ecf4aa114 100644
--- a/apps/cli/executables/pexable/conveyor/conveyor/conveyor.py
+++ b/apps/cli/executables/pexable/conveyor/conveyor/conveyor.py
@@ -102,9 +102,9 @@ def _get_settings(filename: str) -> Dict[str, str]:
     workspaces_lustre_root_dir = processing_properties.rootDirectory
 
     current_root_directory = str(pathlib.Path.cwd().parent)
-    current_subdirectory = str(pathlib.Path.cwd().stem)
+    current_subdirectory = str(pathlib.Path.cwd().name)
     destination_dir = solicitor.solicit_delivery_location()
-    destination_subdir = pathlib.Path(destination_dir).stem
+    destination_subdir = pathlib.Path(destination_dir).name
     request_params = solicitor.solicit_request_params()
 
     return {
diff --git a/apps/cli/executables/pexable/conveyor/conveyor/retrieve.py b/apps/cli/executables/pexable/conveyor/conveyor/retrieve.py
index 24ed33c0c..4f27e0167 100644
--- a/apps/cli/executables/pexable/conveyor/conveyor/retrieve.py
+++ b/apps/cli/executables/pexable/conveyor/conveyor/retrieve.py
@@ -100,7 +100,7 @@ class RetrievalConveyor(ConveyorIF):
         :param dir_list:
         :return:
         """
-        self.logger.info(f"Breaking symlinks between qa area and spool for directory {spool_path.stem}...")
+        self.logger.info(f"Breaking symlinks between qa area and spool for directory {spool_path.name}...")
 
         for directory in dir_list:
             directory = directory.strip("/")
@@ -119,7 +119,7 @@ class RetrievalConveyor(ConveyorIF):
         :param dir_list:
         :return:
         """
-        self.logger.info(f"Moving directories from qa2 to spool for directory {qa_path.stem}...")
+        self.logger.info(f"Moving directories from qa2 to spool for directory {qa_path.name}...")
         for directory in dir_list:
             qa_dir = qa_path / directory
             spool_dir = spool_path / directory
diff --git a/apps/cli/executables/pexable/ingest_envoy/ingest_envoy/solicitor.py b/apps/cli/executables/pexable/ingest_envoy/ingest_envoy/solicitor.py
index c0a1bc0b2..85711158b 100644
--- a/apps/cli/executables/pexable/ingest_envoy/ingest_envoy/solicitor.py
+++ b/apps/cli/executables/pexable/ingest_envoy/ingest_envoy/solicitor.py
@@ -69,7 +69,7 @@ class Solicitor:
         :return: directory name string
         """
         destination_path = pathlib.Path(self.metadata["destinationDirectory"])
-        return destination_path.stem
+        return destination_path.name
 
     def solicit_initial_directory_name(self, wf_id: int) -> str:
         """
@@ -103,7 +103,7 @@ class Solicitor:
 
         if self.verify_valid_initial_version(wf_request.json(), srdp_status):
             initial_path = pathlib.Path(wf_request.json()["results_dir"])
-            return initial_path.stem
+            return initial_path.name
         else:
             self.logger.error("Error: Invalid initial version! No weblog found. Running Single Version Ingestion...")
             return INVALID_INITIAL_VERSION
diff --git a/apps/cli/executables/pexable/ws_annihilator/ws_annihilator/annihilator.py b/apps/cli/executables/pexable/ws_annihilator/ws_annihilator/annihilator.py
index 6fca07e31..4dd0cf927 100644
--- a/apps/cli/executables/pexable/ws_annihilator/ws_annihilator/annihilator.py
+++ b/apps/cli/executables/pexable/ws_annihilator/ws_annihilator/annihilator.py
@@ -167,7 +167,7 @@ class Annihilator:
             for stale in dir_list.split(","):
                 # catch empty string directory or whitespace only directory or VLASS directory (VLASS will handle VLASS)
                 if stale and not stale.isspace() and not stale.startswith("VLASS"):
-                    name_list.append(pathlib.Path(str(stale)).stem)
+                    name_list.append(pathlib.Path(str(stale)).name)
 
         return name_list
 
-- 
GitLab