Brett Smith [Mon, 26 May 2014 12:12:25 +0000 (08:12 -0400)]
2752: arv-put resumes interrupted downloads from cache.
This commit simply uses all the state-saving work in arv-put's main()
function.
Brett Smith [Fri, 23 May 2014 20:46:49 +0000 (16:46 -0400)]
2752: Add ResumeCache.restart().
This will make it easier for the user to bypass the cache.
Brett Smith [Fri, 23 May 2014 20:22:39 +0000 (16:22 -0400)]
2752: Refactor progress reporting in arv-put's CollectionWriter.
Brett Smith [Fri, 23 May 2014 19:52:50 +0000 (15:52 -0400)]
2752: Separate and test progress reporting functions.
Brett Smith [Fri, 23 May 2014 18:55:56 +0000 (14:55 -0400)]
2752: Factor out arv-put byte tally, and test.
Brett Smith [Fri, 23 May 2014 17:16:25 +0000 (13:16 -0400)]
2752: Add ResumableCollectionWriter serialization to arv-put.
Brett Smith [Mon, 26 May 2014 12:02:15 +0000 (08:02 -0400)]
2752: Add ResumeCache to arv-put.
This class encapsulates all the functionality necessary to
de/serialize ResumableWriter state.
Brett Smith [Mon, 26 May 2014 12:01:27 +0000 (08:01 -0400)]
2752: Generate cache filenames from arv-put arguments.
Brett Smith [Thu, 22 May 2014 21:10:40 +0000 (17:10 -0400)]
2752: Add basic test for arv-put.
Brett Smith [Thu, 22 May 2014 20:46:15 +0000 (16:46 -0400)]
2752: Extract common Python test methods.
I'm going to reuse these to test arv-put.
Brett Smith [Thu, 22 May 2014 20:11:10 +0000 (16:11 -0400)]
2752: Move arv-put functionality to arvados.commands.put.
This will make it easier to unit test arv-put, and make it easier for
developers to extend or customize its functionality.
Brett Smith [Thu, 22 May 2014 19:49:31 +0000 (15:49 -0400)]
2752: Move Python tests to dedicated subdirectory.
This better follows Python convention, and will let us build out our
test frameworks without cluttering the root source directories.
This change brings a small change to the way we run tests. Pass the
directory name to the discover command:
$ python -m unittest discover tests
Brett Smith [Fri, 30 May 2014 14:40:07 +0000 (10:40 -0400)]
2752: Add arvados.collections.ResumableCollectionWriter.
This is a subclass of CollectionWriter that only accepts data from the
filesystem. In exchange, it can record its own state, and resume
writing from one of those states. arv-put will use this to make the
user experience nicer if a long upload is interrupted.
Brett Smith [Tue, 20 May 2014 16:14:07 +0000 (12:14 -0400)]
2752: Implement CollectionWriter with a work queue.
This will make it easier to capture and restore state.
Brett Smith [Tue, 20 May 2014 15:29:44 +0000 (11:29 -0400)]
2752: Reuse CollectionWriter.write_file() where possible.
Brett Smith [Tue, 20 May 2014 15:15:00 +0000 (11:15 -0400)]
2752: Add method CollectionWriter.write_file().
Brett Smith [Tue, 20 May 2014 15:12:56 +0000 (11:12 -0400)]
2752: Remove trailing whitespace in arv-put.
Brett Smith [Tue, 20 May 2014 14:25:18 +0000 (10:25 -0400)]
2752: Add tests for CollectionWriter.write_directory_tree().
Brett Smith [Tue, 20 May 2014 13:47:27 +0000 (09:47 -0400)]
2752: Clean up after Python SDK Collections tests.
Brett Smith [Tue, 20 May 2014 13:40:53 +0000 (09:40 -0400)]
2752: Refactor Python SDK test_collections.
This eliminates duplication in setup and teardown code, and clarifies
dependencies between tests a bit.
Brett Smith [Mon, 19 May 2014 18:10:41 +0000 (14:10 -0400)]
2752: Clean up arv-put imports.
Tom Clegg [Thu, 29 May 2014 20:48:30 +0000 (16:48 -0400)]
2762: Do not try to auto-destroy referring links when destroying a model with no uuid. refs #2762
Tom Clegg [Thu, 29 May 2014 17:58:02 +0000 (13:58 -0400)]
2754: Change "create pipeline" label to "run", to match others in same workflow.
Peter Amstutz [Thu, 29 May 2014 17:41:23 +0000 (13:41 -0400)]
Another fix to sharing scope to use keep_services/accessible. refs #2766
Peter Amstutz [Thu, 29 May 2014 17:05:43 +0000 (13:05 -0400)]
Added proper sharing scope to permit actually downloading shared files. refs #2766
Brett Smith [Thu, 29 May 2014 14:52:04 +0000 (10:52 -0400)]
2753: Fix Collection inline file view.
The height limit needs to be applied to the images themselves, rather
than the containing div.
Peter Amstutz [Thu, 29 May 2014 14:18:53 +0000 (10:18 -0400)]
Added rescue AccessForbiddenException to collections controller and view to
disable the "sharing link" feature when the client is untrusted. refs #2766
Peter Amstutz [Thu, 29 May 2014 13:32:08 +0000 (09:32 -0400)]
Merge branch '2044-share-button' refs #2766
Peter Amstutz [Thu, 29 May 2014 13:22:43 +0000 (09:22 -0400)]
Go Keep client correctly closes response body on client requests, should fix
lingering connections problem. Also added graceful shutdown on SIGINT to
keepproxy. refs #1885
radhika [Wed, 28 May 2014 16:58:11 +0000 (12:58 -0400)]
Merge branch 'master' of git.curoverse.com:arvados
radhika [Wed, 28 May 2014 16:56:36 +0000 (12:56 -0400)]
An equivalent of this script is now at services/api/script. This was done as part of Feature #2272.
Tom Clegg [Wed, 28 May 2014 16:44:04 +0000 (12:44 -0400)]
2754: Merge branch '2754-pipeline-template-description' refs #2754
Tom Clegg [Wed, 28 May 2014 16:00:33 +0000 (12:00 -0400)]
2754: Add migration missing from commit:
fe84c84827af6092784408629e4cde0663fe6af8
Peter Amstutz [Wed, 28 May 2014 15:19:37 +0000 (11:19 -0400)]
2044: Fixed CollectionsController#search_scopes to use 'filter' correctly
instead of using 'where' incorrectly. Reverted most changes to
ArvadosModel#ensure_owner_uuid_is_permitted. Added rescue to
collections/show.html.erb when log.event_at is nil.
Ward Vandewege [Wed, 28 May 2014 15:00:07 +0000 (11:00 -0400)]
Do not use symbol keys in the properties of permission links.
Peter Amstutz [Wed, 28 May 2014 14:53:23 +0000 (10:53 -0400)]
Merge branch 'master' into 2044-share-button
Tom Clegg [Wed, 28 May 2014 14:04:55 +0000 (10:04 -0400)]
2892: Fix user agreement routing. closes #2892
Tom Clegg [Wed, 28 May 2014 00:01:22 +0000 (20:01 -0400)]
2862: Use ?format=js so browser does not think js and html views are
interchangeable. closes #2862
Tom Clegg [Tue, 27 May 2014 22:16:39 +0000 (18:16 -0400)]
2760: Merge branch '2760-not-all-objects-in-folders' refs #2760
Peter Amstutz [Tue, 27 May 2014 21:07:40 +0000 (17:07 -0400)]
Merge branch 'master' of git.curoverse.com:arvados
Peter Amstutz [Tue, 27 May 2014 21:07:11 +0000 (17:07 -0400)]
Adjusted timeout on websocket_test from 3 seconds to 4 in an attempt to reduce
the number of spurious timeouts on jenkins.
radhika [Tue, 27 May 2014 20:50:26 +0000 (16:50 -0400)]
Merge branch 'master' of git.curoverse.com:arvados
Peter Amstutz [Tue, 27 May 2014 20:50:09 +0000 (16:50 -0400)]
Merge branch 'master' of git.curoverse.com:arvados #2751
radhika [Tue, 27 May 2014 20:20:57 +0000 (16:20 -0400)]
Merge branch '2756-eventbus-in-workbench' into 2678-owned_by
Conflicts:
services/api/script/crunch-dispatch.rb
radhika [Tue, 27 May 2014 19:54:36 +0000 (15:54 -0400)]
2756: fix error where partial lines were potentially logged
Peter Amstutz [Tue, 27 May 2014 19:50:04 +0000 (15:50 -0400)]
Merge branch 'master' of git.curoverse.com:arvados refs #2751
Peter Amstutz [Tue, 27 May 2014 19:49:37 +0000 (15:49 -0400)]
Merge branch '2751-python-sdk-keep-proxy-support' closes #2751
radhika [Tue, 27 May 2014 19:16:05 +0000 (15:16 -0400)]
Merge branch 'master' into 2756-eventbus-in-workbench
radhika [Tue, 27 May 2014 19:15:26 +0000 (15:15 -0400)]
2756: log span title
radhika [Tue, 27 May 2014 19:11:07 +0000 (15:11 -0400)]
2756: fix typo in helper method signature
radhika [Tue, 27 May 2014 18:59:55 +0000 (14:59 -0400)]
2756: update the ui to show job progress, and links in one column
radhika [Tue, 27 May 2014 17:19:53 +0000 (13:19 -0400)]
2525: add some javadoc comments
radhika [Tue, 27 May 2014 17:02:47 +0000 (13:02 -0400)]
2678: upon Tom's feedback, setting owner_uuid of the pi whether or not the pi belongs to a group.
Tom Clegg [Tue, 27 May 2014 15:43:07 +0000 (11:43 -0400)]
2754: Add pipeline template description attribute.
radhika [Tue, 27 May 2014 15:30:44 +0000 (11:30 -0400)]
Merge branch 'master' into 2525-java-sdk
radhika [Tue, 27 May 2014 15:22:00 +0000 (11:22 -0400)]
Merge branch 'master' into 2678-owned_by
radhika [Tue, 27 May 2014 15:16:22 +0000 (11:16 -0400)]
Merge branch 'master' into 2756-eventbus-in-workbench
radhika [Tue, 27 May 2014 15:15:03 +0000 (11:15 -0400)]
Merge branch 'master' into 2525-java-sdk
radhika [Tue, 27 May 2014 15:12:25 +0000 (11:12 -0400)]
Merge branch 'master' into 2767-doc-updates
Tom Clegg [Tue, 27 May 2014 15:08:25 +0000 (11:08 -0400)]
2760: Exclude system objects like VMs and repos from folder behavior.
Tim Pierce [Tue, 27 May 2014 15:06:42 +0000 (11:06 -0400)]
Merge branch '2755-python-sdk-permissions'
Refs #2755.
radhika [Tue, 27 May 2014 14:47:17 +0000 (10:47 -0400)]
Merge branch 'master' into 2525-java-sdk
Tom Clegg [Tue, 27 May 2014 14:44:56 +0000 (10:44 -0400)]
2760: Merge branch '2760-folder-hierarchy' refs #2760
Peter Amstutz [Tue, 27 May 2014 14:43:04 +0000 (10:43 -0400)]
2751: Test tweak to clear settings after changing environment variables.
Tim Pierce [Tue, 27 May 2014 14:38:29 +0000 (10:38 -0400)]
2865: collect garbage after each GET and PUT.
Quick fix for Keep OOM errors: reclaim memory aggressively.
Fixes #2865.
radhika [Tue, 27 May 2014 14:38:32 +0000 (10:38 -0400)]
Merge branch '2756-eventbus-in-workbench' into 2678-owned_by
radhika [Tue, 27 May 2014 14:37:57 +0000 (10:37 -0400)]
Merge branch 'master' into 2756-eventbus-in-workbench
radhika [Tue, 27 May 2014 14:37:12 +0000 (10:37 -0400)]
Merge branch 'master' into 2678-owned_by
Peter Amstutz [Tue, 27 May 2014 14:36:56 +0000 (10:36 -0400)]
2751: Changed to "except:" to "except Exception:". Refactored environment setup in keep_client_Test to be a bit more robust.
radhika [Tue, 27 May 2014 14:35:03 +0000 (10:35 -0400)]
2678: update a-r-p-i to set the owner_uuid on the newly created job when the pi belongs to a group. also, update crunch-dspatch to create the log lines with the group's owner_uuid.
Peter Amstutz [Tue, 27 May 2014 14:23:12 +0000 (10:23 -0400)]
Merge branch 'master' of git.curoverse.com:arvados refs #1885
Peter Amstutz [Tue, 27 May 2014 14:22:38 +0000 (10:22 -0400)]
1885: Tests and bugfixes for -no-get and -no-put options.
Tom Clegg [Tue, 27 May 2014 14:17:33 +0000 (10:17 -0400)]
2760: Merge branch 'master' into 2760-folder-hierarchy
radhika [Mon, 26 May 2014 17:33:45 +0000 (13:33 -0400)]
Merge branch 'master' into 2756-eventbus-in-workbench
Brett Smith [Mon, 26 May 2014 15:36:11 +0000 (11:36 -0400)]
2863: Remove debugging print from Python KeepClient.
Other tools like crunch-job parse the output of tools like arv-get and
arv-put. Right now crunch-job is saving this debug output in the log
attribute of running jobs, which confuses several other tools like
Workbench.
Closes #2863.
radhika [Sun, 25 May 2014 04:08:15 +0000 (00:08 -0400)]
2756: added a link to job when a job is chosen
radhika [Sat, 24 May 2014 22:23:44 +0000 (18:23 -0400)]
2756: log write
radhika [Sat, 24 May 2014 21:08:06 +0000 (17:08 -0400)]
2756: fix issue from merge conflict
radhika [Sat, 24 May 2014 19:49:06 +0000 (15:49 -0400)]
Merge branch 'master' into 2756-eventbus-in-workbench
Conflicts:
apps/workbench/app/assets/javascripts/pipeline_instances.js
Tim Pierce [Sat, 24 May 2014 18:34:45 +0000 (14:34 -0400)]
2829: add X-Block-Size response header
Responses to successful GET or HEAD requests include an X-Block-Size
header.
radhika [Sat, 24 May 2014 17:38:16 +0000 (13:38 -0400)]
Merge branch 'master' into 2767-doc-updates
Tim Pierce [Sat, 24 May 2014 04:44:06 +0000 (00:44 -0400)]
2755: incorporate code review.
* Unit tests cover all permutations of signature/authorization when
--enforce-permissions=false
* Keep is more forgiving about the structure of locators, permits
locator hints of unknown type (as long as they begin with an uppercase
letter)
* Keep delivers 400 Bad Request for requests that do not match any
route, or are lexically invalid. 404 Not Found only for requests with
a syntactically valid hash not found on disk.
Refs #2755.
Tom Clegg [Fri, 23 May 2014 22:44:35 +0000 (18:44 -0400)]
2760: Merge branch 'master' into 2760-folder-hierarchy
Tom Clegg [Fri, 23 May 2014 21:32:21 +0000 (17:32 -0400)]
2760: Disambiguate "hover" from "selected" style. Do not highlight
non-selectable rows on hover.
Tim Pierce [Wed, 21 May 2014 14:58:18 +0000 (10:58 -0400)]
2755: add support for signed locators in the Python SDK.
* arvados.Keep.put() saves the response body (which may contain a
signed locator) and returns it to the caller.
* arvados.Keep.get() passes the full signed locator to the remote Keep
server. The bare MD5 hash is still used for caching and for
shuffled_service_roots
* run_test_server.run_keep() takes arguments 'blob_signing_key' and
'enforce_permissions', for testing permission signatures in unit
tests.
* test_keep_client: new unit tests for permissions:
- with --enforce-permissions=true:
- GET with a signed locator works
- GET with an unsigned locator fails
- unauthenticated GET fails
- with --enforce-permissions=false:
- GET with a signed locator works
- GET with an unsigned locator works
- unauthenticated GET works
Bug fixes to permission handling in the Keep server:
* Locator hints may appear in any order; be flexible. Parse them in
GetBlockHandler rather than in the REST router.
* Returned locators are terminated with newline (consistent with
Warehouse, and more friendly for human debugging).
* The locator returned from a PUT request always has a size hint.
* The correct Authorization header keyword is "OAuth2", not
"OAuth". D'oh.
* Updated unit tests to accommodate newlines, size hints and OAuth2.
Refs #2755.
Tom Clegg [Fri, 23 May 2014 21:12:33 +0000 (17:12 -0400)]
2760: Merge branch 'master' into 2760-folder-hierarchy
Peter Amstutz [Fri, 23 May 2014 21:04:10 +0000 (17:04 -0400)]
Merge branch 'master' into 2044-share-button refs #2044
Tom Clegg [Fri, 23 May 2014 21:01:08 +0000 (17:01 -0400)]
2760: Use "My Folders" to indicate the root of my folder hierarchy.
Peter Amstutz [Fri, 23 May 2014 20:47:45 +0000 (16:47 -0400)]
Merge branch 'master' into 2751-python-sdk-keep-proxy-support refs #2751
Peter Amstutz [Fri, 23 May 2014 19:37:57 +0000 (15:37 -0400)]
Merge branch '1885-keep-proxy' closes #1885
Peter Amstutz [Fri, 23 May 2014 18:08:53 +0000 (14:08 -0400)]
1885: Added logging of invalid requests. Added logging when the server list is
update. Improved KeepClient error reporting.
Peter Amstutz [Fri, 23 May 2014 14:27:59 +0000 (10:27 -0400)]
Merge branch 'master' into 1885-keep-proxy refs #1885
Peter Amstutz [Fri, 23 May 2014 14:26:31 +0000 (10:26 -0400)]
1885: Fix bug in not returning from the handler on failed authorization.
Improved logging (which uncovered the previous bug.) Tweaked go.sh and tests.
Peter Amstutz [Thu, 22 May 2014 18:51:56 +0000 (14:51 -0400)]
1885: Made ServiceRoots atomically updatable, so that KeepProxy can poll for
changes in the services list without disrupting any active flows.
Peter Amstutz [Thu, 22 May 2014 17:38:10 +0000 (13:38 -0400)]
Merge branch 'master' into 1885-keep-proxy refs #1885
Peter Amstutz [Thu, 22 May 2014 17:36:58 +0000 (13:36 -0400)]
1885: GET and HEAD through the proxy work correctly now. Added invalid API token test.
Peter Amstutz [Thu, 22 May 2014 15:17:32 +0000 (11:17 -0400)]
1885: Full-stack integration test (api+keep+keepproxy+keepclient) works!
Peter Amstutz [Thu, 22 May 2014 14:45:33 +0000 (10:45 -0400)]
Merge remote-tracking branch 'origin/master' into 1885-keep-proxy refs #1885
Peter Amstutz [Thu, 22 May 2014 14:45:18 +0000 (10:45 -0400)]
1885: Integration test of proxy work in progress.
Peter Amstutz [Wed, 21 May 2014 20:32:23 +0000 (16:32 -0400)]
1885: Stubbed out integration test for proxy