#!/bin/env python import os, sys, logging, threading, time, string from sqlalchemy import * import subprocess import re ## ====== galaxy-prod01.hpc.uio.no - DB connection to the Lifeportal tables ====== #application_db_engine = create_engine('postgresql://vd_galaxy_data_prod_user:54a7C7f0@dbpg-abel.uio.no:5432/vd_galaxy_data_prod?sslmode=require', encoding='utf-8') DBvalue = None galaxy_user_email_list = None try : filehandler=open('/home/laportal/galaxy/config/local_env.sh', 'r') for line in filehandler : if re.search('export GALAXYDB', line) : DBvalue = line.split('"')[1] if re.search('export GALAXY_USER_EMAIL_LIST', line) : galaxy_user_email_list = line.split('"')[1] except IOError : print "The file does not exist, exiting gracefully" if DBvalue is not None and galaxy_user_email_list is not None: application_db_engine = create_engine(DBvalue, encoding='utf-8') metadata = MetaData(application_db_engine) connection = application_db_engine.connect() emails = [] result = connection.execute("select email from galaxy_user") for row in result: emails.append(row['email']) connection.close() f=open('/home/laportal/additional_python_galaxy_packs/galaxy_user_emails.txt', 'w') for email in emails : f.write(email+'\n') f.close() mv_command = "mv /home/galaxy/additional_python_galaxy_packs/galaxy_user_emails.txt %s " % galaxy_user_email_list p = subprocess.Popen(mv_command, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT) p.wait() else : print "Missing GALAXYDB or missing GALAXY_USER_EMAIL_LIST"