def biobank_monthly_reconciliation_report(): # make sure this cron job is executed after import_biobank_samples timestamp = biobank_samples_pipeline.get_last_biobank_sample_file_info()[2] logging.info('Generating monthly reconciliation report.') biobank_samples_pipeline.write_reconciliation_report(timestamp, 'monthly') logging.info('Generated monthly reconciliation report.') return json.dumps({'monthly-reconciliation-report': 'generated'})
def import_biobank_samples(): # Note that crons always have a 10 minute deadline instead of the normal 60s; additionally our # offline service uses basic scaling with has no deadline. logging.info('Starting samples import.') written, timestamp = biobank_samples_pipeline.upsert_from_latest_csv() logging.info('Import complete (%d written), generating report.', written) logging.info('Generating reconciliation report.') biobank_samples_pipeline.write_reconciliation_report(timestamp) logging.info('Generated reconciliation report.') return json.dumps({'written': written})