Björn Grüning
6b7634011e
Add planemo test files to the tool shed upload blacklist.
2015-01-09 19:02:42 +00:00
Greg Von Kuster
0760ab25ea
Add a ToolDataTableManager for managing tool data tables in the Tool Shed.
2014-07-22 15:12:40 -04:00
Greg Von Kuster
38c0d78979
Move 2 Tool Shed utility functions into the middleware hg class.
2014-06-22 08:00:57 -04:00
Greg Von Kuster
88d6c68201
Add a dependency manager with tag attribute handler classes to manage the process of populating and unpopulating the toolshed and changeset_revision attributes for <repository> tag sets when uploading and importing / exporting repositories from the tool shed.
2014-06-21 14:15:20 -04:00
Greg Von Kuster
e17ad656ac
Fix for handling complex repository dependency definitions that contain recipes that include <package> tag sets that define dependencies needed only for compiling the dependent package.
2014-06-19 17:46:04 -04:00
Greg Von Kuster
4297b7054a
Eliminate the use of the Galaxy web transaction object in Tool Shed utility functions related to importing a repository capsule into a Tool Shed and move som hg related functions from the commit_util module to the hg_util module.
2014-06-18 15:28:20 -04:00
Greg Von Kuster
390d05bbd1
Eliminate the Tool Shed's td_common_util.py module by moving the functions to appropriate classes.
2014-05-28 15:49:02 -04:00
Greg Von Kuster
b2f3d6a551
Continued down-sizing of the Tool Shed's shed_util_common module by moving certain functions to more appropriate locations. Some fixes for adding and removing entries to the Tool Shed's repository registry.
2014-05-28 11:17:50 -04:00
Greg Von Kuster
ec1688d1da
Clarify problematic members of tar archives being uploaded to Tool Shed repositories.
2014-05-27 11:13:05 -04:00
Greg Von Kuster
7238ba2304
Use the new hg_util.get_repo_for_repository() function to retrieve a mercurial repo for a repository.
2014-05-21 12:22:16 -04:00
Greg Von Kuster
f6b05fea77
Change function signatures for several utility functions that used to require trans but now only need app.
2014-05-21 09:55:12 -04:00
Greg Von Kuster
f4fee7d3cb
Add a repository registry to the Tool Shed to keep in-memory information about repositories. This will significantly improve some page rendering in the tool shed, specifically the current main Categories splash page. This registry will provide filtered certification information for the planned Tool Shed splash page which will be rendered with Javascript. The Tool Shed's install and test framework still needs to be enhanced to update this registry during install and test runs.
2014-05-20 17:18:14 -04:00
Trevor Wennblom
268dae876e
selected_file -> repo_file
2014-04-29 19:24:47 -05:00
Greg Von Kuster
8bce650dda
Add a new tool shed mercurial utility module named hg_util.py and begin to extract hg related utility functions out of the shed_util_common.py module. Enhance the functions that display the mercurial changeset rev and hash string to display one or the other or both. Display only the rev and not the hash string on the prominent grids in the tool shed, but continue to display the hash string on admin grids.
2014-04-10 17:11:01 -04:00
Greg Von Kuster
2abe24b292
Better fix than ea1fbe9 and handle first discovered unhandled secure / insecure protocol issue when messing with the tool shed url for installed repositories.
2014-04-03 17:40:44 -04:00
Greg Von Kuster
8f031dfd7b
Upon import, handle problematic prior_installation_required attribute incorrectly added (and set to "False") to the <repository> tag when a repository was exported.
2014-04-03 10:19:46 -04:00
Greg Von Kuster
971e9d6f88
Don't add unnecessary (and problematic) prior_installation_required attributes to repository dependency definitions when exporting a repository and its dependencies into a capsule.
2014-04-03 09:31:43 -04:00
Greg Von Kuster
e7851779c2
Add the new repository type "Repository suite definition". This new type is associated with repositories that will contain a single file named repository_dependencies.xml that defines simple repository dependency relationships to a collection of repositories that contain related Galaxy utilities. The chemicaltoolbox repository is an example.
2014-03-27 16:03:53 -04:00
Dave Bouvier
c2c5ffda35
Fix python 2.6 support.
2014-02-27 09:20:45 -05:00
Greg Von Kuster
73a12d096e
Fixes for handling complex repository dependency definitions in tool dependency recipes.
2014-02-26 15:09:43 -05:00
Greg Von Kuster
0a2863a01f
When exporting a repository and dependency hierarchy from the tool shed, always make sure the primary repository entry is ordered last in the manifest.
2014-01-07 16:55:59 -05:00
Greg Von Kuster
0aa3b2bc32
Fix for populating and unpopulating complex repository dependency tags sets in tool dependency definitions contained in tool shed repositories.
2013-11-19 08:52:20 -05:00
Dave Bouvier
44d7f92352
Fix for exporting a repository with a complex repository dependency.
2013-11-15 11:14:26 -05:00
Greg Von Kuster
81a793973d
Display an error message rather than raising an exception when handling invalid complex repository dependencies in the Tool Shed.
2013-11-14 15:51:24 -05:00
Greg Von Kuster
769667ce7a
Add the ability to import a repository capsule that was exported from a tool shed into another tool
...
shed. Upon initial upload, the capsule is inspected and validated to ensure it is a valid exported capule.
Also, since exporting a capsule allows for including repository dependencies, the Tool Shed into which the capsule is being imported will be inspected to see if any of the repositories defined by any of the capsule's exported repository archives already exists in the Tool Shed. Any repository that already exists will not be "overwritten" or altered in any way, but the existing repository will be used.
Since repositories that were exported into the capsule are associated with a user (the owner), the user importing the capsule must have the authorization to create the repository in the current Tool Shed with that same owner. If the current user is an admin user or a member of the IUC, all repositories will be created no matter the owner. Otherwise, only repositories whose associated owner is the current user will be created.
Repositories whose import process results in an error will not typically halt the import process for
any remaining repository archives in the capsule. However, errors encoutnered with importing a rep
ository that is a dependecy of a later repository may force manual fixes in some cases. For example
, if a capsule includes 2 repsitories that are defined as circular dependencies, one of the repisoto
ry's repository_dependency.xml file will need to be manually altered to add the appropriate changese
t revision since it was not defined at the time the repository was imported.
The Tool Shed API will be enhanced to accommodate this new feature shortly.
2013-11-08 14:54:21 -05:00
Greg Von Kuster
6895f4eafc
Merged from next-stable
2013-11-01 11:38:38 -04:00
Greg Von Kuster
4d65e8f26e
Fixes for tool_dependencies.xml files whose recipe is missing either an <actions> tag set or an <actions_group> tag set. Upon upload of a single file, an appropriate error message will be displayed (currently it is logged when uploading a tarball). In either case, when the containing repository is installed, the tool dependency will be set to an error state and and the error message will be associated with the dependency record.
2013-11-01 11:38:04 -04:00
Greg Von Kuster
c46ba4aea5
Display an error message rather than raising an exception when a changeset being committed to a tool shed repository includes a dependency definition that has an invalid <repository> tag set.
2013-10-25 11:06:28 -04:00
Greg Von Kuster
bd6b375165
Handle automatic population of the toolshed and changeset_revision attributes of <repository> tags defined as subelements of any actions tag type in tool dependency definitions.
2013-10-23 16:30:35 -04:00
Greg Von Kuster
3af26a17b0
Partial framework support for enhanced tool dependency definitions that enable installation of binaries into specified architectures. More coming soon...
2013-09-06 09:38:12 -04:00
Dannon Baker
0f120bd92c
Strip trailing whitespace (and windows line endings) from all python files in lib
2013-08-29 23:39:52 -04:00
Greg Von Kuster
cf96dccddb
Add the ability to export a specified repository revision from the tool shed to a gzip compressed archive saved locally. The ability to import this archive to the same or another tool shed is not yet implemented, but coming soon. All of the repository's repository dependencies can optionally be exported into the same archive. The archive includes a manifest.xml file that contains the order in whcih the repositories in the archive must be imported.
...
This feature is now available for any installable revision of a repository using the new "Export this revision" option in the Repository actions menu in the browser. It is also available via the Tool Shed API using a command like the following:
export.py --url http://testtoolshed.g2.bx.psu.edu --name chemicaltoolbox --owner bgruening --revision 4133dbf7ff4d --export_repository_dependencies True --download_dir /tmp
2013-08-02 19:30:03 -04:00
Greg Von Kuster
10ed6d92f1
Fix import in the tool shed's commit_util.
2013-07-26 09:10:23 -04:00
Dave Bouvier
81feb4445e
Fix to correctly handle comments in repository dependency definitions.
2013-07-24 10:17:03 -04:00
Greg Von Kuster
cfcf08b376
Fixes when pushing changes to a repository in the tool shed from the command line: (a) only allow changes to a single file named tool_dependencies.xml to be pushed to a repository whose type is "Tool dependency definition" and (b) for any changes that are made to dependency definition files, validate the attributes of any <repository> tags, making sure that all required attributes (toolshed, name, owner, changeset_revision) are defined since automatically populating these attributes is supported only when using the tool shed's upload utility.
2013-07-17 15:34:54 -04:00
Greg Von Kuster
cbc0a13fbd
Only allow a single file named tool_dependencies.xml to be committed to a repository in the tool shed whose type is tool_dependency_definition.
2013-07-15 11:28:41 -04:00
Greg Von Kuster
4ce30a5123
Raise an exception with a useful message if a dependency definition file being uploaded to a repository in the tool shed is missing a required name or owner attribute for a repository dependency.
2013-07-08 14:31:15 -04:00
Greg Von Kuster
7a23a93cf6
A slight variation on Nick Soranzo's pull request # 176 for fixing large file downloades using download_by_url.
2013-06-06 15:05:10 -04:00
Greg Von Kuster
8eb3e7d4fa
Eliminate the use of Galaxy's elementree egg within the tool shed.
2013-05-28 12:24:52 -04:00
Greg Von Kuster
98948dd18b
Fixes for xml handling in the tol shed.
2013-05-23 14:57:12 -04:00
Greg Von Kuster
e7945c8c07
Keep all contents of dependency definition files when re-writing them to include missing toolshed and changeset_revision attributes.
2013-05-23 11:49:52 -04:00
Greg Von Kuster
ce76fce4d1
Populate the toolshed attribute when it is missing from the repository tag in dependency definitions with the current tool shed url.
2013-05-22 16:11:55 -04:00
Greg Von Kuster
4d781de114
Fixes for complext repository dependency definitions that do not include a changeset_revision attribute. A fix for indenting the updates XML file is also included.
2013-05-21 12:26:55 -04:00
Greg Von Kuster
7dbe4b11e1
Fixes for committing to a tool shed repository - bug introduced when the tool shed uplaod controller was refactored.
2013-05-17 07:30:53 -04:00
Greg Von Kuster
1d8a1ec1b6
Refactor the tool shed upload controller.
2013-05-16 21:45:54 -04:00