1 new commit in galaxy-central:
https://bitbucket.org/galaxy/galaxy-central/commits/2ce1ba52c6a7/
Changeset: 2ce1ba52c6a7
User: martenson
Date: 2014-01-30 22:38:04
Summary: reports: addressing stringification bug
Affected #: 1 file
diff -r 72a210496cda233f28769dac11c116e0e6a71f18 -r 2ce1ba52c6a7b33676ffebb73053ab3f9e9baa21 lib/galaxy/webapps/reports/controllers/jobs.py
--- a/lib/galaxy/webapps/reports/controllers/jobs.py
+++ b/lib/galaxy/webapps/reports/controllers/jobs.py
@@ -29,7 +29,7 @@
return job.tool_id
class CreateTimeColumn( grids.DateTimeColumn ):
def get_value( self, trans, grid, job ):
- return job.create_time
+ return job.create_time.isoformat()
class UserColumn( grids.GridColumn ):
def get_value( self, trans, grid, job ):
if job.user:
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.
2 new commits in galaxy-central:
https://bitbucket.org/galaxy/galaxy-central/commits/fd4936ae8219/
Changeset: fd4936ae8219
Branch: next-stable
User: greg
Date: 2014-01-30 17:20:04
Summary: Fixes in the tool shed's install and test framework for handling repositories containing tools that install correctly but with one or more dependencies that do not.
Affected #: 2 files
diff -r 593be4d22c470abe6bdbbfa51f2a8e7ac035de33 -r fd4936ae82193639011ed06b9552ec1a8c8166e5 test/install_and_test_tool_shed_repositories/base/util.py
--- a/test/install_and_test_tool_shed_repositories/base/util.py
+++ b/test/install_and_test_tool_shed_repositories/base/util.py
@@ -735,6 +735,8 @@
repository_name = str( repository.name )
repository_owner = str( repository.owner )
repository_changeset_revision = str( repository.changeset_revision )
+ print 'Populating dependency install containers for revision %s of repository %s owned by %s.' % \
+ ( repository_changeset_revision, repository_name, repository_owner )
processed_successful_repository_installations = install_and_test_statistics_dict.get( 'successful_repository_installations', [] )
if repository_identifier_tup not in processed_successful_repository_installations:
install_and_test_statistics_dict[ 'successful_repository_installations' ].append( repository_identifier_tup )
@@ -844,12 +846,17 @@
repository_name = str( repository.name )
repository_owner = str( repository.owner )
repository_changeset_revision = str( repository.changeset_revision )
+ print 'Potentially populating install containers for repository dependencies of revision %s of repository %s owned by %s.' % \
+ ( repository_changeset_revision, repository_name, repository_owner )
repository_dependencies_dicts, error_message = get_repository_dependencies_dicts( galaxy_tool_shed_url, repository_metadata_id )
if error_message:
- print 'Cannot check or populate repository dependency install containers for version %s of repository %s owned by %s ' % \
+ print 'Cannot check or populate repository dependency install containers for revision %s of repository %s owned by %s ' % \
( repository_changeset_revision, repository_name, repository_owner )
print 'due to the following error getting repository_dependencies_dicts:\n%s' % str( error_message )
else:
+ if not repository_dependencies_dicts:
+ print 'Revision %s of repository %s owned by %s has no repository dependencies.' % \
+ ( repository_changeset_revision, repository_name, repository_owner )
for repository_dependencies_dict in repository_dependencies_dicts:
if not isinstance( repository_dependencies_dict, dict ):
print 'Skipping invalid repository_dependencies_dict: %s' % str( repository_dependencies_dict )
@@ -951,7 +958,7 @@
can_update_tool_shed )
print 'Result of inserting tool_test_results for revision %s of repository %s owned by %s:\n%s' % \
( changeset_revision, name, owner, str( response_dict ) )
- print'============================================================='
+ print'\n============================================================='
else:
# The required repository's installation failed.
tool_test_results_dict[ 'installation_errors' ][ 'current_repository' ] = str( required_repository.error_message )
@@ -965,7 +972,7 @@
can_update_tool_shed )
print 'Result of inserting tool_test_results for revision %s of repository %s owned by %s:\n%s' % \
( changeset_revision, name, owner, str( response_dict ) )
- print'============================================================='
+ print'\n============================================================='
else:
print 'Cannot retrieve revision %s of required repository %s owned by %s from the database ' % \
( changeset_revision, name, owner )
@@ -1056,7 +1063,7 @@
name = str( name )
owner = str( owner )
changeset_revision = str( changeset_revision )
- print '============================================================='
+ print '\n============================================================='
print 'Inserting the following into tool_test_results for revision %s of repository %s owned by %s:\n%s' % \
( changeset_revision, name, owner, str( tool_test_results_dict ) )
print 'Updating tool_test_results for repository_metadata id %s.' % metadata_revision_id
diff -r 593be4d22c470abe6bdbbfa51f2a8e7ac035de33 -r fd4936ae82193639011ed06b9552ec1a8c8166e5 test/install_and_test_tool_shed_repositories/repositories_with_tools/functional_tests.py
--- a/test/install_and_test_tool_shed_repositories/repositories_with_tools/functional_tests.py
+++ b/test/install_and_test_tool_shed_repositories/repositories_with_tools/functional_tests.py
@@ -251,6 +251,19 @@
repository_identifier_tup,
install_and_test_statistics_dict,
tool_test_results_dict )
+ if params.get( 'test_install_error', False ):
+ # The repository was successfully installed, but one or more dependencies had installation errors,
+ # so we'll populate the test result containers since we cannot execute any tests.
+ response_dict = \
+ install_and_test_base_util.save_test_results_for_changeset_revision( install_and_test_base_util.galaxy_tool_shed_url,
+ tool_test_results_dicts,
+ tool_test_results_dict,
+ repository_dict,
+ params,
+ can_update_tool_shed )
+ print 'Result of inserting tool_test_results for revision %s of repository %s owned by %s:\n%s' % \
+ ( changeset_revision, name, owner, str( response_dict ) )
+ print'\n============================================================='
# Populate the installation containers (success or error) for the repository's immediate repository
# dependencies whose containers are not yet populated.
install_and_test_base_util.populate_install_containers_for_repository_dependencies( app,
@@ -266,6 +279,10 @@
print 'Cannot execute tests for tools in revision %s of repository %s owned by %s ' % \
( changeset_revision, name, owner )
print 'because one or more dependencies has installation errors.'
+ # The repository was installed successfully, but one or more dependencies had installation errors. Since
+ # we cannot test the tools due to these errors, we'll remove tests and tools were created during the repository
+ # installation process so nose will not discover them and attempt to execute them.
+ remove_tests( app )
else:
print 'Revision %s of repository %s owned by %s installed successfully, so running tool tests.' % \
( changeset_revision, name, owner )
@@ -279,6 +296,9 @@
from_json_string( file( galaxy_shed_tools_dict, 'r' ).read() ) )
# If the repository has a test-data directory we write the generated shed_tools_dict to a temporary
# file so the functional test framework can find it.
+ # TODO: Eliminate the need for this shed_tools_dict since it grows large over the course of each test run.
+ # If it cannot be eliminated altogether, reinitialize it with each new repository install so at this point
+ # it contains only entries for the current repository dependency hierarchy being tested.
file( galaxy_shed_tools_dict, 'w' ).write( to_json_string( shed_tools_dict ) )
print 'Saved generated shed_tools_dict to %s\nContents: %s' % ( galaxy_shed_tools_dict, shed_tools_dict )
try:
@@ -605,6 +625,7 @@
owner = str( repository.owner )
changeset_revision = str( repository.changeset_revision )
repository_identifier_tup = ( name, owner, changeset_revision )
+ print 'Testing tools contained in revision %s of repository %s owned by %s.' % ( changeset_revision, name, owner )
# Generate the test methods for this installed repository. We need to pass testing_shed_tools=True here
# or twill will look in $GALAXY_HOME/test-data for test data, which may result in missing or invalid test
# files.
https://bitbucket.org/galaxy/galaxy-central/commits/d9f6f3f24671/
Changeset: d9f6f3f24671
User: greg
Date: 2014-01-30 17:20:33
Summary: Merged from next-stable
Affected #: 2 files
diff -r b67a464b8588525e17fd64910b9b9f3bcadb82ae -r d9f6f3f2467195397828d452664c68e5e4c104ef test/install_and_test_tool_shed_repositories/base/util.py
--- a/test/install_and_test_tool_shed_repositories/base/util.py
+++ b/test/install_and_test_tool_shed_repositories/base/util.py
@@ -735,6 +735,8 @@
repository_name = str( repository.name )
repository_owner = str( repository.owner )
repository_changeset_revision = str( repository.changeset_revision )
+ print 'Populating dependency install containers for revision %s of repository %s owned by %s.' % \
+ ( repository_changeset_revision, repository_name, repository_owner )
processed_successful_repository_installations = install_and_test_statistics_dict.get( 'successful_repository_installations', [] )
if repository_identifier_tup not in processed_successful_repository_installations:
install_and_test_statistics_dict[ 'successful_repository_installations' ].append( repository_identifier_tup )
@@ -844,12 +846,17 @@
repository_name = str( repository.name )
repository_owner = str( repository.owner )
repository_changeset_revision = str( repository.changeset_revision )
+ print 'Potentially populating install containers for repository dependencies of revision %s of repository %s owned by %s.' % \
+ ( repository_changeset_revision, repository_name, repository_owner )
repository_dependencies_dicts, error_message = get_repository_dependencies_dicts( galaxy_tool_shed_url, repository_metadata_id )
if error_message:
- print 'Cannot check or populate repository dependency install containers for version %s of repository %s owned by %s ' % \
+ print 'Cannot check or populate repository dependency install containers for revision %s of repository %s owned by %s ' % \
( repository_changeset_revision, repository_name, repository_owner )
print 'due to the following error getting repository_dependencies_dicts:\n%s' % str( error_message )
else:
+ if not repository_dependencies_dicts:
+ print 'Revision %s of repository %s owned by %s has no repository dependencies.' % \
+ ( repository_changeset_revision, repository_name, repository_owner )
for repository_dependencies_dict in repository_dependencies_dicts:
if not isinstance( repository_dependencies_dict, dict ):
print 'Skipping invalid repository_dependencies_dict: %s' % str( repository_dependencies_dict )
@@ -951,7 +958,7 @@
can_update_tool_shed )
print 'Result of inserting tool_test_results for revision %s of repository %s owned by %s:\n%s' % \
( changeset_revision, name, owner, str( response_dict ) )
- print'============================================================='
+ print'\n============================================================='
else:
# The required repository's installation failed.
tool_test_results_dict[ 'installation_errors' ][ 'current_repository' ] = str( required_repository.error_message )
@@ -965,7 +972,7 @@
can_update_tool_shed )
print 'Result of inserting tool_test_results for revision %s of repository %s owned by %s:\n%s' % \
( changeset_revision, name, owner, str( response_dict ) )
- print'============================================================='
+ print'\n============================================================='
else:
print 'Cannot retrieve revision %s of required repository %s owned by %s from the database ' % \
( changeset_revision, name, owner )
@@ -1056,7 +1063,7 @@
name = str( name )
owner = str( owner )
changeset_revision = str( changeset_revision )
- print '============================================================='
+ print '\n============================================================='
print 'Inserting the following into tool_test_results for revision %s of repository %s owned by %s:\n%s' % \
( changeset_revision, name, owner, str( tool_test_results_dict ) )
print 'Updating tool_test_results for repository_metadata id %s.' % metadata_revision_id
diff -r b67a464b8588525e17fd64910b9b9f3bcadb82ae -r d9f6f3f2467195397828d452664c68e5e4c104ef test/install_and_test_tool_shed_repositories/repositories_with_tools/functional_tests.py
--- a/test/install_and_test_tool_shed_repositories/repositories_with_tools/functional_tests.py
+++ b/test/install_and_test_tool_shed_repositories/repositories_with_tools/functional_tests.py
@@ -251,6 +251,19 @@
repository_identifier_tup,
install_and_test_statistics_dict,
tool_test_results_dict )
+ if params.get( 'test_install_error', False ):
+ # The repository was successfully installed, but one or more dependencies had installation errors,
+ # so we'll populate the test result containers since we cannot execute any tests.
+ response_dict = \
+ install_and_test_base_util.save_test_results_for_changeset_revision( install_and_test_base_util.galaxy_tool_shed_url,
+ tool_test_results_dicts,
+ tool_test_results_dict,
+ repository_dict,
+ params,
+ can_update_tool_shed )
+ print 'Result of inserting tool_test_results for revision %s of repository %s owned by %s:\n%s' % \
+ ( changeset_revision, name, owner, str( response_dict ) )
+ print'\n============================================================='
# Populate the installation containers (success or error) for the repository's immediate repository
# dependencies whose containers are not yet populated.
install_and_test_base_util.populate_install_containers_for_repository_dependencies( app,
@@ -266,6 +279,10 @@
print 'Cannot execute tests for tools in revision %s of repository %s owned by %s ' % \
( changeset_revision, name, owner )
print 'because one or more dependencies has installation errors.'
+ # The repository was installed successfully, but one or more dependencies had installation errors. Since
+ # we cannot test the tools due to these errors, we'll remove tests and tools were created during the repository
+ # installation process so nose will not discover them and attempt to execute them.
+ remove_tests( app )
else:
print 'Revision %s of repository %s owned by %s installed successfully, so running tool tests.' % \
( changeset_revision, name, owner )
@@ -279,6 +296,9 @@
from_json_string( file( galaxy_shed_tools_dict, 'r' ).read() ) )
# If the repository has a test-data directory we write the generated shed_tools_dict to a temporary
# file so the functional test framework can find it.
+ # TODO: Eliminate the need for this shed_tools_dict since it grows large over the course of each test run.
+ # If it cannot be eliminated altogether, reinitialize it with each new repository install so at this point
+ # it contains only entries for the current repository dependency hierarchy being tested.
file( galaxy_shed_tools_dict, 'w' ).write( to_json_string( shed_tools_dict ) )
print 'Saved generated shed_tools_dict to %s\nContents: %s' % ( galaxy_shed_tools_dict, shed_tools_dict )
try:
@@ -605,6 +625,7 @@
owner = str( repository.owner )
changeset_revision = str( repository.changeset_revision )
repository_identifier_tup = ( name, owner, changeset_revision )
+ print 'Testing tools contained in revision %s of repository %s owned by %s.' % ( changeset_revision, name, owner )
# Generate the test methods for this installed repository. We need to pass testing_shed_tools=True here
# or twill will look in $GALAXY_HOME/test-data for test data, which may result in missing or invalid test
# files.
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/b67a464b8588/
Changeset: b67a464b8588
User: jmchilton
Date: 2014-01-30 01:35:54
Summary: Fix division by zero error in quota.
Affected #: 1 file
diff -r 286b0d3b0485cfd1e5434dda86528662549d4468 -r b67a464b8588525e17fd64910b9b9f3bcadb82ae lib/galaxy/quota/__init__.py
--- a/lib/galaxy/quota/__init__.py
+++ b/lib/galaxy/quota/__init__.py
@@ -138,7 +138,11 @@
# get the usage, if it wasn't passed
if usage is False:
usage = self.get_usage( trans, user, history )
- return min( ( int( float( usage ) / quota * 100 ), 100 ) )
+ try:
+ return min( ( int( float( usage ) / quota * 100 ), 100 ) )
+ except ZeroDivisionError:
+ return 100
+
def set_entity_quota_associations( self, quotas=[], users=[], groups=[], delete_existing_assocs=True ):
for quota in quotas:
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/6a7cb977238c/
Changeset: 6a7cb977238c
User: jmchilton
Date: 2014-01-29 07:27:30
Summary: Fix for a failing API test in buildbot.
Just noticed these are actually running tonight, that is good news.
Affected #: 1 file
diff -r 60203bad003cc6b4bc054500248e5a69cbe9b8bc -r 6a7cb977238c76359f39c8484b88cdd1daff4b1f test/functional/api/test_page_revisions.py
--- a/test/functional/api/test_page_revisions.py
+++ b/test/functional/api/test_page_revisions.py
@@ -1,5 +1,5 @@
from galaxy.exceptions import error_codes
-from functional.api.pages import BasePageApiTestCase
+from functional.api.test_pages import BasePageApiTestCase
class PageRevisionsApiTestCase( BasePageApiTestCase ):
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.