From 3766616ba14b7c58a08da352f985fb2e97d72853 Mon Sep 17 00:00:00 2001 From: Carl Eberhard Date: Thu, 18 Jul 2013 16:24:18 -0400 Subject: [PATCH] Visualizations registry: move built-in vis config files to sample, copying them over on registry start; add vis xml files to .hgignore; fix test data in scatterplot.xml --- .hgignore | 2 +- .../{circster.xml => circster.xml.sample} | 0 config/visualizations/example.xml.example | 30 ------------------- .../{phyloviz.xml => phyloviz.xml.sample} | 0 ...scatterplot.xml => scatterplot.xml.sample} | 1 - .../{sweepster.xml => sweepster.xml.sample} | 0 .../{trackster.xml => trackster.xml.sample} | 0 lib/galaxy/visualization/registry.py | 15 ++++++++++ 8 files changed, 16 insertions(+), 32 deletions(-) rename config/visualizations/{circster.xml => circster.xml.sample} (100%) delete mode 100644 config/visualizations/example.xml.example rename config/visualizations/{phyloviz.xml => phyloviz.xml.sample} (100%) rename config/visualizations/{scatterplot.xml => scatterplot.xml.sample} (93%) rename config/visualizations/{sweepster.xml => sweepster.xml.sample} (100%) rename config/visualizations/{trackster.xml => trackster.xml.sample} (100%) diff --git a/.hgignore b/.hgignore index 51f7cbc6abb..ffb0c07f9c3 100644 --- a/.hgignore +++ b/.hgignore @@ -60,7 +60,7 @@ shed_tool_data_table_conf.xml job_conf.xml data_manager_conf.xml shed_data_manager_conf.xml -visualizations_conf.xml +config/visualizations/*.xml static/welcome.html.* static/welcome.html diff --git a/config/visualizations/circster.xml b/config/visualizations/circster.xml.sample similarity index 100% rename from config/visualizations/circster.xml rename to config/visualizations/circster.xml.sample diff --git a/config/visualizations/example.xml.example b/config/visualizations/example.xml.example deleted file mode 100644 index be6af87c81f..00000000000 --- a/config/visualizations/example.xml.example +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - HistoryDatasetAssociation - data.Data - dataset_id - string - boolean - integer - float - json - - - - default - string - boolean - integer - float - json - string - visualization_id - dataset_id - dataset_instance - hda_ldda - - - diff --git a/config/visualizations/phyloviz.xml b/config/visualizations/phyloviz.xml.sample similarity index 100% rename from config/visualizations/phyloviz.xml rename to config/visualizations/phyloviz.xml.sample diff --git a/config/visualizations/scatterplot.xml b/config/visualizations/scatterplot.xml.sample similarity index 93% rename from config/visualizations/scatterplot.xml rename to config/visualizations/scatterplot.xml.sample index a4d1ef0e494..3ab023cb5bc 100644 --- a/config/visualizations/scatterplot.xml +++ b/config/visualizations/scatterplot.xml.sample @@ -10,7 +10,6 @@ dataset_id - bler diff --git a/config/visualizations/sweepster.xml b/config/visualizations/sweepster.xml.sample similarity index 100% rename from config/visualizations/sweepster.xml rename to config/visualizations/sweepster.xml.sample diff --git a/config/visualizations/trackster.xml b/config/visualizations/trackster.xml.sample similarity index 100% rename from config/visualizations/trackster.xml rename to config/visualizations/trackster.xml.sample diff --git a/lib/galaxy/visualization/registry.py b/lib/galaxy/visualization/registry.py index 98e26538437..5e0b8593f4d 100644 --- a/lib/galaxy/visualization/registry.py +++ b/lib/galaxy/visualization/registry.py @@ -67,6 +67,7 @@ class VisualizationsRegistry( object ): # load the registry from the xml files located in configuration_filepath using the given parser configuration_filepath = os.path.join( galaxy_root, configuration_filepath ) self.configuration_filepath = self.check_conf_filepath( configuration_filepath ) + self.move_sample_conf_files() self.load() # what to use to parse query strings into resources/vars for the template @@ -82,6 +83,20 @@ class VisualizationsRegistry( object ): raise IOError( 'visualization configuration directory (%s) not found' %( configuration_filepath ) ) return configuration_filepath + def move_sample_conf_files( self ): + """ + Copies any `*.xml.sample` files in `configuration_filepath` to + `.xml` files of the same names if no file with that name already exists. + + :returns: a list of the files moved + """ + files_moved = [] + for sample_file in glob.glob( os.path.join( self.configuration_filepath, '*.sample' ) ): + new_name = os.path.splitext( sample_file )[0] + if not os.path.exists( new_name ): + shutil.copy2( sample_file, new_name ) + files_moved.append( new_name ) + def load( self ): """ Builds the registry by parsing the xml in `self.configuration_filepath`