diff --git a/apps/cli/executables/pexable/casa_envoy/casa_envoy/foundation.py b/apps/cli/executables/pexable/casa_envoy/casa_envoy/foundation.py index c689cb4021f3ee43b93149087a3d355c2e311d1a..94128108c6c0e8b38cab8fb56c51ac73c9005212 100644 --- a/apps/cli/executables/pexable/casa_envoy/casa_envoy/foundation.py +++ b/apps/cli/executables/pexable/casa_envoy/casa_envoy/foundation.py @@ -56,6 +56,7 @@ class GeneralFoundation(FoundationIF): def __init__(self, parameters: dict, metadata: AbstractTextFile): self.logger = logging.getLogger("casa_envoy") self.parent_path = parameters["parent_path"] + self.rawdata_dir = self.parent_path / "rawdata" self.working_dir = self.parent_path / "working" self.content = json.loads(metadata.content) @@ -76,8 +77,21 @@ class GeneralFoundation(FoundationIF): if stripped_file: shutil.copy(stripped_file, self.working_dir) + self.copy_into_rawdata() + self.logger.info("General data foundation complete!") + def copy_into_rawdata(self): + """ + CASA expects some files from the 'working' directory to also exist next to the data in the 'rawdata' directory. + + :return: + """ + # Copy files that need to exist next to the data into the rawdata directory + for file in self.working_dir.glob('*flagtargetstemplate.txt'): + if file.exists(): + shutil.copy(file, self.rawdata_dir) + class RestoreFoundation(FoundationIF): """