Skip to content
Snippets Groups Projects

Got EVLA CMS restores working via casa_envoy, using casa_restorepipescript.py when it exists

Merged Sam Kagan requested to merge use-casa-version-pipescript-in-casa-envoy into 2.8.4-DEVELOPMENT
1 unresolved thread
1 file
+ 12
28
Compare changes
  • Side-by-side
  • Inline
@@ -36,14 +36,19 @@ class CasaConfigure:
"""
Set required environment variables
No need to audit them afterwards for None's since the keys and values in `os.environ` must all be strings.
Source: https://docs.python.org/3.10/library/os.html#os.environ
:return:
"""
os.environ["SCIPIPE_ROOTDIR"] = self.parameters["rootDirectory"]
# If user specified CASA Version, use it.
if "casaHome" in self.metadata_content:
os.environ["CASA_HOME"] = self.metadata_content.get("casaHome")
elif "main" in self.metadata_content and "CASA_HOME" in self.metadata_content["main"]:
if self.metadata_content.get("casaHome") is not None:
os.environ["CASA_HOME"] = self.metadata_content["casaHome"]
elif (
self.metadata_content.get("main") is not None and self.metadata_content["main"].get("CASA_HOME") is not None
):
# Catch case of VLASS nesting
os.environ["CASA_HOME"] = self.metadata_content["main"]["CASA_HOME"]
else:
@@ -54,31 +59,10 @@ class CasaConfigure:
os.environ["CASA_HOME"] = self.parameters["homeForReprocessing"]
os.environ["LANG"] = "en_US.UTF-8"
os.environ["PPR_FILENAME"] = self.parameters["ppr"]
self.check_processing_env()
def check_processing_env(self):
"""
Varify processing environment is ready for CASA
:return:
"""
self.logger.info("Checking processing environment:")
env_list = ["SCIPIPE_ROOTDIR", "CASA_HOME", "PPR_FILENAME", "LANG"]
result_list = []
for var in env_list:
env = os.environ.get(var)
result_list.append(env)
self.logger.info(f"{var}: {env}")
if "None" in result_list:
self.logger.error("Environment setup Failed!")
sys.exit(1)
else:
self.logger.info("Environment ready for processing")
# Restores oftentimes use a piperestorescript instead of a PPR.xml
# AuditFiles would catch an erroneously absent PPR
if self.parameters.get("ppr") is not None:
os.environ["PPR_FILENAME"] = self.parameters["ppr"]
class StandardRunner(RunnerABC):
Loading