def __init__(self, custom_cm=None, use_monet=None, profile=False, **params): """ @param custom_cm: allows to pass an object to be used as connection manager. """ self.log = get_gsm_logger('pipeline', 'pipeline.log') self.use_monet = use_monet if not custom_cm: if use_monet != None: self.conn_manager = GSMConnectionManager(use_monet=use_monet) else: self.conn_manager = GSMConnectionManager() else: self.conn_manager = custom_cm try: self.conn = self.conn_manager.get_connection(**params) if profile: self.conn.profile = True self.conn.log.setLevel(logging.DEBUG) self.conn.commit() except db.Error as exc: self.log.error("Failed to connect: %s" % exc) raise exc self.options = load_parameters('%s/settings.ini' % os.path.dirname(__file__)) self.log.debug('Pipeline parameters: %s' % self.options) self.log.info('Pipeline started.')
def __init__(self, filename): """ Read parset from a given file. """ self.filename = filename self.run_id = None self.log = get_gsm_logger('parsets', 'import.log') if not path.isfile(filename): self.log.error('Parset file does not exist: %s' % filename) raise GSMException('Parset file does not exist: %s' % filename) self.path = path.dirname(path.realpath(filename)) self.data = load_parameters(filename) self.parset_id = self.data.get('image_id') self.image_id = None # Not yet known. self.source_count = None self.recalculate_pointing = False self.log.info('Parset opened: %s' % filename)