Source code for pycif.plugins.models.iconart.flushrun
import glob
import os
from ....utils import path
from .io.utils import LBC_DIRNAME, OUTPUT_DIRNAME
[docs]
def flushrun(self, rundir, mode, transform_id, full_flush=True):
"""Cleaning the simulation directories to limit space usage"""
list_subdirs = glob.glob("{}/*/".format(rundir))
# Removing big files in ICON-ART forward run directories
for subdir in list_subdirs:
flush_rundir(subdir)
# -- Remove the lbc files
lbc_dir = os.path.join(rundir, LBC_DIRNAME)
path.remove(lbc_dir)
[docs]
def flush_rundir(runsubdir):
"""Cleaning the simulation directories to limit space usage"""
outputs_dir = os.path.join(runsubdir, OUTPUT_DIRNAME)
if os.path.exists(outputs_dir):
# -- Remove the large output files from ICON
list_files = glob.glob("{}/*.nc".format(outputs_dir))
for f in list_files:
os.remove(f)
# -- Remove the reduced output files
reduced_outputs_dir = os.path.join(outputs_dir, 'reduced')
path.remove(reduced_outputs_dir)
# -- Remove the concatenated output files
concatenated_outputs_dir = os.path.join(outputs_dir, 'concatenated_byday')
path.remove(concatenated_outputs_dir)