def init(file_path, url, engine_options={}, create_tables=False): """Connect mappings to the database""" # Load the appropriate db module load_egg_for_url(url) # Create the database engine engine = create_engine(url, **engine_options) # Connect the metadata to the database. metadata.bind = engine # Clear any existing contextual sessions and reconfigure Session.remove() Session.configure(bind=engine) # Create tables if needed if create_tables: metadata.create_all() # Pack everything into a bunch result = Bunch(**globals()) result.engine = engine result.session = Session result.create_tables = create_tables # Load local tool shed security policy result.security_agent = CommunityRBACAgent(result) result.shed_counter = shed_statistics.ShedCounter(result) result.hgweb_config_manager = galaxy.webapps.community.util.hgweb_config.HgWebConfigManager( ) return result
def init( file_path, url, engine_options={}, create_tables=False ): """Connect mappings to the database""" # Load the appropriate db module load_egg_for_url( url ) # Create the database engine engine = create_engine( url, **engine_options ) # Connect the metadata to the database. metadata.bind = engine # Clear any existing contextual sessions and reconfigure Session.remove() Session.configure( bind=engine ) # Create tables if needed if create_tables: metadata.create_all() # Pack everything into a bunch result = Bunch( **globals() ) result.engine = engine result.session = Session result.create_tables = create_tables #load local galaxy security policy result.security_agent = CommunityRBACAgent( result ) result.shed_counter = ShedCounter( result ) return result
import sys sys.path.insert(1,'/galaxy-central') sys.path.insert(1,'/galaxy-central/lib') from scripts.db_shell import * from galaxy.util.bunch import Bunch from galaxy.security import GalaxyRBACAgent from sqlalchemy.orm import sessionmaker from sqlalchemy import * import argparse bunch = Bunch( **globals() ) engine = create_engine('postgres://*****:*****@localhost:5432/galaxy') bunch.session = sessionmaker(bind=engine) # For backward compatibility with "model.context.current" bunch.context = sessionmaker(bind=engine) security_agent = GalaxyRBACAgent( bunch ) security_agent.sa_session = sa_session def add_user(email, password, key=None): """ Add Galaxy User. From John https://gist.github.com/jmchilton/4475646 """ query = sa_session.query( User ).filter_by( email=email ) if query.count() > 0: return query.first() else: User.use_pbkdf2 = False user = User(email)
# FROM https://github.com/bgruening/docker-galaxy-stable/blob/master/galaxy/create_galaxy_user.py from scripts.db_shell import * from galaxy.util.bunch import Bunch from galaxy.security import GalaxyRBACAgent from sqlalchemy.orm import sessionmaker from sqlalchemy import * import argparse bunch = Bunch(**globals()) #engine = create_engine('postgres://*****:*****@localhost:5432/galaxy') engine = create_engine( 'sqlite:///home/vagrant/galaxy/database/universe.sqlite') bunch.session = sessionmaker(bind=engine) # For backward compatibility with "model.context.current" bunch.context = sessionmaker(bind=engine) security_agent = GalaxyRBACAgent(bunch) security_agent.sa_session = sa_session def add_user(email, password, key=None): """ Add Galaxy User. From John https://gist.github.com/jmchilton/4475646 """ query = sa_session.query(User).filter_by(email=email) if query.count() > 0: return query.first() else: user = User(email) user.set_password_cleartext(password) sa_session.add(user)