1 new commit in galaxy-central:
https://bitbucket.org/galaxy/galaxy-central/commits/a2bad69f03f4/
Changeset: a2bad69f03f4
User: jmchilton
Date: 2013-12-17 17:10:41
Summary: Re-tweak config.py imports for legacy installs.
Affected #: 1 file
diff -r 374783ca6a480fbb571bfe9eb46052667b9d0479 -r a2bad69f03f4786309ba80ff305ebdd7b68f93fa lib/galaxy/config.py
--- a/lib/galaxy/config.py
+++ b/lib/galaxy/config.py
@@ -1,6 +1,8 @@
"""
Universe configuration builder.
"""
+# absolute_import needed for tool_shed package.
+from __future__ import absolute_import
import sys, os, tempfile, re
import logging, logging.config
Repository URL: https://bitbucket.org/galaxy/galaxy-central/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
1 new commit in galaxy-central:
https://bitbucket.org/galaxy/galaxy-central/commits/af87cdcf3608/
Changeset: af87cdcf3608
User: greg
Date: 2013-12-17 04:06:16
Summary: Eliminate deprecated repositories from the tool shed's install and test framework.
Affected #: 1 file
diff -r 422f9675cb5025e20b402ad92aa591a87ca3a883 -r af87cdcf36084831fce7d99e621b1efc943d2aff test/install_and_test_tool_shed_repositories/functional_tests.py
--- a/test/install_and_test_tool_shed_repositories/functional_tests.py
+++ b/test/install_and_test_tool_shed_repositories/functional_tests.py
@@ -176,14 +176,14 @@
else:
galaxy_encode_secret = os.environ[ 'GALAXY_INSTALL_TEST_SECRET' ]
-testing_single_repository = {}
+testing_single_repository_dict = {}
if 'repository_name' in os.environ and 'repository_owner' in os.environ:
- testing_single_repository[ 'name' ] = os.environ[ 'repository_name' ]
- testing_single_repository[ 'owner' ] = os.environ[ 'repository_owner' ]
+ testing_single_repository_dict[ 'name' ] = str( os.environ[ 'repository_name' ] )
+ testing_single_repository_dict[ 'owner' ] = str( os.environ[ 'repository_owner' ] )
if 'repository_revision' in os.environ:
- testing_single_repository[ 'changeset_revision' ] = os.environ[ 'repository_revision' ]
+ testing_single_repository_dict[ 'changeset_revision' ] = str( os.environ[ 'repository_revision' ] )
else:
- testing_single_repository[ 'changeset_revision' ] = None
+ testing_single_repository_dict[ 'changeset_revision' ] = None
class ReportResults( Plugin ):
@@ -364,6 +364,8 @@
log.debug( 'Testing is restricted to the latest downloadable revision in this test run.' )
repository_dicts = []
parts = [ 'repository_revisions' ]
+ # We'll filter out deprecated repositories from testing since testing them is necessary only if reproducibility
+ # is guaranteed and we currently do not guarantee reproducibility.
params = dict( do_not_test='false',
downloadable='true',
includes_tools='true',
@@ -381,21 +383,25 @@
if error_message:
log.debug( 'Error getting additional details from the API: %s' % str( error_message ) )
else:
- # Don't test empty repositories.
- changeset_revision = baseline_repository_dict[ 'changeset_revision' ]
- if changeset_revision != suc.INITIAL_CHANGELOG_HASH:
- # Merge the dictionary returned from /api/repository_revisions with the detailed repository_dict and
- # append it to the list of repository_dicts to install and test.
- if latest_revision_only:
- latest_revision = repository_dict[ 'latest_revision' ]
- if changeset_revision == latest_revision:
+ # Don't test deprecated repositories since testing them is necessary only if reproducibility is guaranteed
+ # and we are not currently guaranteeing reproducibility.
+ deprecated = asbool( repository_dict.get( 'deprecated', False ) )
+ if not deprecated:
+ # Don't test empty repositories.
+ changeset_revision = baseline_repository_dict[ 'changeset_revision' ]
+ if changeset_revision != suc.INITIAL_CHANGELOG_HASH:
+ # Merge the dictionary returned from /api/repository_revisions with the detailed repository_dict and
+ # append it to the list of repository_dicts to install and test.
+ if latest_revision_only:
+ latest_revision = repository_dict[ 'latest_revision' ]
+ if changeset_revision == latest_revision:
+ repository_dicts.append( dict( repository_dict.items() + baseline_repository_dict.items() ) )
+ else:
repository_dicts.append( dict( repository_dict.items() + baseline_repository_dict.items() ) )
- else:
- repository_dicts.append( dict( repository_dict.items() + baseline_repository_dict.items() ) )
- if testing_single_repository:
- tsr_name = testing_single_repository[ 'name' ]
- tsr_owner = testing_single_repository[ 'owner' ]
- tsr_changeset_revision = testing_single_repository[ 'changeset_revision' ]
+ if testing_single_repository_dict:
+ tsr_name = testing_single_repository_dict[ 'name' ]
+ tsr_owner = testing_single_repository_dict[ 'owner' ]
+ tsr_changeset_revision = testing_single_repository_dict[ 'changeset_revision' ]
log.debug( 'Testing single repository with name %s and owner %s.' % ( str( tsr_name ), str( tsr_owner ) ) )
for repository_to_install in repository_dicts:
rti_name = repository_to_install[ 'name' ]
Repository URL: https://bitbucket.org/galaxy/galaxy-central/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
1 new commit in galaxy-central:
https://bitbucket.org/galaxy/galaxy-central/commits/422f9675cb50/
Changeset: 422f9675cb50
User: greg
Date: 2013-12-17 01:27:28
Summary: Handle exceptions when uninstalling repositories in the tool shed's install nad test framework.
Affected #: 1 file
diff -r 46521f5722c621a8b84d2a8101af87d82cc5eba8 -r 422f9675cb5025e20b402ad92aa591a87ca3a883 test/install_and_test_tool_shed_repositories/functional_tests.py
--- a/test/install_and_test_tool_shed_repositories/functional_tests.py
+++ b/test/install_and_test_tool_shed_repositories/functional_tests.py
@@ -1220,9 +1220,9 @@
for owner, grouped_repository_dicts in repository_dicts_by_owner.items():
print "# "
for repository_dict in grouped_repository_dicts:
- name = repository_dict[ 'name' ]
- owner = repository_dict[ 'owner' ]
- changeset_revision = repository_dict[ 'changeset_revision' ]
+ name = str( repository_dict[ 'name' ] )
+ owner = str( repository_dict[ 'owner' ] )
+ changeset_revision = str( repository_dict[ 'changeset_revision' ] )
print "# Revision %s of repository %s owned by %s" % ( changeset_revision, name, owner )
def test_repository_tools( app, repository, repository_dict, tool_test_results_dicts, tool_test_results_dict, results_dict ):
@@ -1328,15 +1328,20 @@
owner=owner,
changeset_revision=changeset_revision )
log.debug( 'Revision %s of repository %s owned by %s selected for uninstallation.' % ( changeset_revision, name, owner ) )
- test_install_repositories.generate_uninstall_method( uninstall_repository_dict )
- # Set up nose to run the generated uninstall method as a functional test.
- test_config = nose.config.Config( env=os.environ, plugins=nose.plugins.manager.DefaultPluginManager() )
- test_config.configure( sys.argv )
- # Run the uninstall method. This method uses the Galaxy web interface to uninstall the previously installed
- # repository and all of its repository dependencies, deleting each of them from disk.
- result, _ = run_tests( test_config )
- success = result.wasSuccessful()
- if success:
+ try:
+ test_install_repositories.generate_uninstall_method( uninstall_repository_dict )
+ # Set up nose to run the generated uninstall method as a functional test.
+ test_config = nose.config.Config( env=os.environ, plugins=nose.plugins.manager.DefaultPluginManager() )
+ test_config.configure( sys.argv )
+ # Run the uninstall method. This method uses the Galaxy web interface to uninstall the previously installed
+ # repository and all of its repository dependencies, deleting each of them from disk.
+ result, _ = run_tests( test_config )
+ repository_uninstall_successful = result.wasSuccessful()
+ except Exception, e:
+ repository_uninstall_successful = False
+ log.exception( 'Uninstallation of revision %s of repository %s owned by %s failed: %s.' % \
+ ( rd_changeset_revision, rd_name, rd_owner, str( e ) ) )
+ if repository_uninstall_successful:
# Now that the repository is uninstalled we can attempt to uninstall each of its repository dependencies.
# We have to do this through Twill in order to maintain app.toolbox and shed_tool_conf.xml in a state that
# is valid for future tests. Since some of the repository's repository dependencies may require other of
@@ -1356,15 +1361,19 @@
( rd_changeset_revision, rd_name, rd_owner ) )
# Generate a test method to uninstall the repository dependency through the embedded Galaxy application's
# web interface.
- test_install_repositories.generate_uninstall_method( uninstall_repository_dict )
- # Set up nose to run the generated uninstall method as a functional test.
- test_config = nose.config.Config( env=os.environ, plugins=nose.plugins.manager.DefaultPluginManager() )
- test_config.configure( sys.argv )
- # Run the uninstall method.
- result, _ = run_tests( test_config )
- success = result.wasSuccessful()
- if not success:
- log.debug( 'Uninstallation of revision %s of repository %s owned by %s failed: %s' % \
+ try:
+ test_install_repositories.generate_uninstall_method( uninstall_repository_dict )
+ # Set up nose to run the generated uninstall method as a functional test.
+ test_config = nose.config.Config( env=os.environ, plugins=nose.plugins.manager.DefaultPluginManager() )
+ test_config.configure( sys.argv )
+ # Run the uninstall method.
+ result, _ = run_tests( test_config )
+ if not result.wasSuccessful():
+ # We won't set ok here because we'll continue to uninstall whatever we can.
+ log.debug( 'Uninstallation of revision %s of repository %s owned by %s failed.' % \
+ ( rd_changeset_revision, rd_name, rd_owner ) )
+ except Exception, e:
+ log.exception( 'Uninstallation of revision %s of repository %s owned by %s failed: %s.' % \
( rd_changeset_revision, rd_name, rd_owner, str( e ) ) )
else:
log.debug( 'Uninstallation of revision %s of repository %s owned by %s failed.' % ( changeset_revision, name, owner ) )
Repository URL: https://bitbucket.org/galaxy/galaxy-central/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.