def main(argv): """ """ try: opts, args = getopt.getopt(argv, "dcr:", ['help']) except getopt.GetoptError: usage() sys.exit(2) for opt, arg in opts: if opt == '-d': print 'Confirm dropping all tables and reloading the data by pressing c or press q to abort:' pdb.set_trace() drop_all() Base.metadata.create_all(engine) elif opt == '-r': print 'Confirm removing NR release %s by pressing c or press q to abort:' % arg pdb.set_trace() U = Uploader() U.start_logging() U.remove_release(arg) logging.info('Release removed') sys.exit() else: usage() sys.exit() L = Loader() L.start_logging() L.import_data() logging.info( '%s completed' % __file__ ) L.set_email_subject('NR list successfully imported') L.send_report()
def compare_all_releases(self): """ """ all_releases = self.list_all_releases() if len(all_releases) <= 2: return all_releases = all_releases[2:] for resolution in self.resolution_labels: for release in all_releases: c1 = NR_eqclass_collection(release='latest', resolution=resolution) c2 = NR_eqclass_collection(release=release, resolution=resolution) logging.info('%s, %s, %s' % (c1.release, c2.release, resolution)) A = Uploader(ensembles=NRCollectionMerger(c1,c2,verbose=False), upload_mode='release_diff') A.update_database()
def import_lists(self,folder): """ """ for (res_id,resolution) in enumerate(self.resolutions): nr_html = 'Nonredundant_' + resolution + '.html' full_nr_html = os.path.join(self.nrlists_root, folder, nr_html) if os.path.isfile(full_nr_html): self.parse_file(file=full_nr_html) # creates self.temp_file c1 = NR_eqclass_collection(file=self.temp_file, resolution=self.resolution_labels[res_id]) if res_id == 0: c2 = NR_eqclass_collection(release='latest',resolution=self.resolution_labels[res_id]) A = Uploader(ensembles=NRCollectionMerger(c1,c2), release_mode='minor', release_description=folder) A.update_database() else: c2 = NR_eqclass_collection(release='previous',resolution=self.resolution_labels[res_id]) A = Uploader(ensembles=NRCollectionMerger(c1,c2), release_mode='reuse', release_description=folder) A.update_database()