1 from .ingestCalibs 
import IngestCalibsTask, IngestCalibsConfig
 
    2 from .read_curated_calibs 
import read_all
 
   11     """Argument parser to support ingesting human curated calibration 
   12        products in a standardized text file format into the repository""" 
   15         InputOnlyArgumentParser.__init__(self, *args, **kwargs)
 
   16         self.add_argument(
"-n", 
"--dry-run", dest=
"dryrun", action=
"store_true",
 
   17                           default=
False, help=
"Don't perform any action?")
 
   18         self.add_argument(
"--create", action=
"store_true", help=
"Create new registry?")
 
   19         self.add_argument(
"--ignore-ingested", dest=
"ignoreIngested", action=
"store_true",
 
   20                           help=
"Don't register files that have already been registered")
 
   21         self.add_argument(
"root", help=
"Root directory to scan for calibs.")
 
   26         if "filter" in self.
register.columns:
 
   27             self.
parse.defaults[
"filter"] = 
"NONE" 
   31     """Task that generates registry for human curated calibration products 
   32        in a standardized text file format""" 
   33     ArgumentParser = IngestCuratedCalibsArgumentParser
 
   34     _DefaultName = 
"ingestCuratedCalibs" 
   35     ConfigClass = IngestCuratedCalibsConfig
 
   38         """Ingest all defect files and add them to the registry""" 
   41             camera = args.butler.get(
'camera')
 
   42             temp_dir = tempfile.mkdtemp()
 
   43             calibs, calib_type = 
read_all(args.root, camera)
 
   47                     file_name = f
'{calib_type}_{d}_{s.isoformat()}.fits' 
   48                     full_file_name = os.path.join(temp_dir, file_name)
 
   49                     self.
log.
info(
'%s written for sensor: %s and calibDate: %s' %
 
   50                                   (calib_type, d, s.isoformat()))
 
   51                     calibs[d][s].writeFits(full_file_name)
 
   52                     file_names.append(full_file_name)
 
   53             args.files = file_names
 
   56             IngestCalibsTask.run(self, args)
 
   58             shutil.rmtree(temp_dir)