More work on syncrhonized test database configuration...

for test drivers.
This commit is contained in:
John Chilton
2016-03-29 08:04:24 -04:00
parent 528b74ca1e
commit fe460008fa
3 changed files with 20 additions and 28 deletions
+3 -9
View File
@@ -110,8 +110,6 @@ def main():
if galaxy_test_tmp_dir is None:
galaxy_test_tmp_dir = tempfile.mkdtemp()
database_auto_migrate = False
if start_server:
tempdir = tempfile.mkdtemp( dir=galaxy_test_tmp_dir )
# Configure the database path.
@@ -121,7 +119,7 @@ def main():
use_test_file_dir=not testing_shed_tools,
)
database_connection, database_auto_migrate = driver_util.database_conf(galaxy_db_path)
database_conf = driver_util.database_conf(galaxy_db_path)
install_database_conf = driver_util.install_database_conf(galaxy_db_path, default_merged=True)
# Data Manager testing temp path
@@ -133,9 +131,7 @@ def main():
master_api_key = get_master_api_key()
app = None
if start_server:
kwargs = dict( database_connection=database_connection,
database_auto_migrate=database_auto_migrate,
shed_tool_data_table_config=shed_tool_data_table_config,
kwargs = dict( shed_tool_data_table_config=shed_tool_data_table_config,
test_conf="test.conf",
tool_config_file=tool_config_file,
tool_data_table_config_path=tool_data_table_config_path,
@@ -147,10 +143,8 @@ def main():
auto_configure_logging=logging_config_file is None,
data_manager_config_file=data_manager_config_file )
kwargs.update(galaxy_config)
kwargs.update(database_conf)
kwargs.update(install_database_conf)
if not database_connection.startswith( 'sqlite://' ):
kwargs[ 'database_engine_option_max_overflow' ] = '20'
kwargs[ 'database_engine_option_pool_size' ] = '10'
if datatypes_conf_override:
kwargs[ 'datatypes_config_file' ] = datatypes_conf_override
# If the user has passed in a path for the .ini file, do not overwrite it.
+8 -1
View File
@@ -196,7 +196,14 @@ def database_conf(db_path, prefix="GALAXY"):
copy_database_template(os.environ[template_var], db_path)
database_auto_migrate = True
database_connection = 'sqlite:///%s' % db_path
return database_connection, database_auto_migrate
config = {
"database_connection": database_connection,
"database_auto_migrate": database_auto_migrate
}
if not database_connection.startswith("sqlite://"):
config["database_engine_option_max_overflow"] = "20"
config["database_engine_option_pool_size"] = "10"
return config
def install_database_conf(db_path, default_merged=False):
+9 -18
View File
@@ -87,16 +87,14 @@ def main():
hgweb_config_dir = hgweb_config_file_path
os.environ[ 'TEST_HG_WEB_CONFIG_DIR' ] = hgweb_config_dir
print "Directory location for hgweb.config:", hgweb_config_dir
toolshed_database_connection, toolshed_database_auto_migrate = driver_util.database_conf(shed_db_path, prefix="TOOL_SHED")
galaxy_database_connection, galaxy_database_auto_migrate = driver_util.database_conf(galaxy_db_path)
toolshed_database_conf = driver_util.database_conf(shed_db_path, prefix="TOOL_SHED")
galaxy_database_conf = driver_util.database_conf(galaxy_db_path)
install_database_conf = driver_util.install_database_conf(galaxy_db_path, default_merged=False)
tool_shed_global_conf = driver_util.get_webapp_global_conf()
tool_shed_global_conf[ '__file__' ] = 'tool_shed_wsgi.ini.sample'
kwargs = dict( admin_users='test@bx.psu.edu',
allow_user_creation=True,
allow_user_deletion=True,
database_connection=toolshed_database_connection,
database_auto_migrate=toolshed_database_auto_migrate,
datatype_converters_config_file='datatype_converters_conf.xml.sample',
file_path=shed_file_path,
global_conf=tool_shed_global_conf,
@@ -113,9 +111,9 @@ def main():
tool_parse_help=False,
tool_data_table_config_path=galaxy_tool_data_table_conf_file,
use_heartbeat=False )
print "Tool shed database connection:", toolshed_database_connection
print "Galaxy database connection:", galaxy_database_connection
kwargs.update(toolshed_database_conf)
print "Tool shed database connection:", toolshed_database_conf["database_connection"]
print "Galaxy database connection:", galaxy_database_conf["database_connection"]
# Generate the tool_data_table_conf.xml file.
file( galaxy_tool_data_table_conf_file, 'w' ).write( tool_data_table_conf_xml_template )
@@ -126,15 +124,13 @@ def main():
toolshedapp = None
kwargs[ 'global_conf' ] = tool_shed_global_conf
if not toolshed_database_connection.startswith( 'sqlite://' ):
kwargs[ 'database_engine_option_pool_size' ] = '10'
toolshedapp = ToolshedUniverseApplication( **kwargs )
database_contexts.tool_shed_context = toolshedapp.model.context
log.info( "Embedded Toolshed application started" )
# ---- Run tool shed webserver ------------------------------------------------------
tool_shed_global_conf[ 'database_connection' ] = toolshed_database_connection
# TODO: Needed for hg middleware ('lib/galaxy/webapps/tool_shed/framework/middleware/hg.py')
tool_shed_global_conf[ 'database_connection' ] = kwargs["database_connection"]
toolshedwebapp = toolshedbuildapp.app_factory( tool_shed_global_conf,
use_translogger=False,
static_enabled=True,
@@ -167,9 +163,7 @@ def main():
galaxy_global_conf = driver_util.get_webapp_global_conf()
galaxy_global_conf[ '__file__' ] = 'config/galaxy.ini.sample'
kwargs = dict( database_connection=galaxy_database_connection,
database_auto_migrate=galaxy_database_auto_migrate,
enable_tool_shed_check=True,
kwargs = dict( enable_tool_shed_check=True,
global_conf=galaxy_global_conf,
hours_between_check=0.001,
migrated_tools_config=galaxy_migrated_tool_conf_file,
@@ -181,18 +175,15 @@ def main():
tool_sheds_config_file=galaxy_tool_sheds_conf_file,
tool_data_table_config_path=galaxy_tool_data_table_conf_file )
kwargs.update(driver_util.setup_galaxy_config(galaxy_db_path, use_test_file_dir=False))
kwargs.update(galaxy_database_conf)
kwargs.update(install_database_conf)
# ---- Build Galaxy Application --------------------------------------------------
if not galaxy_database_connection.startswith( 'sqlite://' ):
kwargs[ 'database_engine_option_pool_size' ] = '10'
kwargs[ 'database_engine_option_max_overflow' ] = '20'
galaxyapp = GalaxyUniverseApplication( **kwargs )
log.info( "Embedded Galaxy application started" )
# ---- Run galaxy webserver ------------------------------------------------------
galaxy_server = None
galaxy_global_conf[ 'database_file' ] = galaxy_database_connection
galaxywebapp = galaxybuildapp.app_factory( galaxy_global_conf,
use_translogger=False,
static_enabled=True,