Brett Smith [Tue, 22 Apr 2014 21:45:46 +0000 (17:45 -0400)]
api: Introduce path-based API token scopes.
Refs #1904, #2662 for background discussion.
Brett Smith [Tue, 22 Apr 2014 18:44:34 +0000 (14:44 -0400)]
api: Test VM login scopes.
The virtual machine controller is the only one doing anything
interesting with API token scopes right now. I'm writing this test
for that functionality to make sure it stays effective through
refactoring.
Brett Smith [Mon, 28 Apr 2014 15:03:22 +0000 (11:03 -0400)]
api: Shorten name of authorized_keys index.
I had trouble running the new TimestampsNotNull migration, because I
ran into the index name limit described in the migration comments.
Running this migration first worked around the problem for me, and I
hope it saves others from tripping over it too.
Tom Clegg [Mon, 14 Apr 2014 15:44:23 +0000 (11:44 -0400)]
Render group with folder view
Tom Clegg [Tue, 29 Apr 2014 00:10:17 +0000 (20:10 -0400)]
Fix patch_paging_vars args.
Tom Clegg [Mon, 28 Apr 2014 23:31:48 +0000 (19:31 -0400)]
Convert joins to subqueries to fix duplicates in owned_items
Tom Clegg [Mon, 28 Apr 2014 19:53:31 +0000 (15:53 -0400)]
Expose names for owned_items as list_response.name_for() in Workbench
Brett Smith [Mon, 28 Apr 2014 18:07:02 +0000 (14:07 -0400)]
Merge branch '1904-object-scopes'
Closes #2642, #2662, #2682.
Brett Smith [Mon, 28 Apr 2014 17:01:18 +0000 (13:01 -0400)]
api: Support filters in API client auths index.
Per comments on Refs #1904. filters is generally the preferred way to
do searching now. I maintained existing limits on what can be
searched with this method.
Brett Smith [Wed, 23 Apr 2014 20:15:37 +0000 (16:15 -0400)]
api: Support scope searching in API token index.
Brett Smith [Mon, 28 Apr 2014 18:01:53 +0000 (14:01 -0400)]
api: Migrate VM auth scopes to new system.
VirtualMachinesController was the only one doing anything special with
API token scopes before we provided the more general-purpose system.
This commit removes its specialized code, and provides a database
migration to convert those specialized scopes to the general-purpose
schema.
Brett Smith [Tue, 22 Apr 2014 21:45:46 +0000 (17:45 -0400)]
api: Introduce path-based API token scopes.
Refs #1904, #2662 for background discussion.
Brett Smith [Tue, 22 Apr 2014 18:44:34 +0000 (14:44 -0400)]
api: Test VM login scopes.
The virtual machine controller is the only one doing anything
interesting with API token scopes right now. I'm writing this test
for that functionality to make sure it stays effective through
refactoring.
Tom Clegg [Mon, 28 Apr 2014 15:15:50 +0000 (11:15 -0400)]
Use name links instead of permission links to include objects in groups.
Brett Smith [Mon, 28 Apr 2014 15:03:22 +0000 (11:03 -0400)]
api: Shorten name of authorized_keys index.
I had trouble running the new TimestampsNotNull migration, because I
ran into the index name limit described in the migration comments.
Running this migration first worked around the problem for me, and I
hope it saves others from tripping over it too.
Tim Pierce [Fri, 25 Apr 2014 22:04:03 +0000 (18:04 -0400)]
Merge branch 'master' into 2620-keep-serialize-io
Tim Pierce [Fri, 25 Apr 2014 21:50:16 +0000 (17:50 -0400)]
Corrected name for volume_test.go.
Tim Pierce [Fri, 25 Apr 2014 21:47:15 +0000 (17:47 -0400)]
Reorganized Volume code for easier comprehension.
Refs #2620
Brett Smith [Fri, 25 Apr 2014 21:33:32 +0000 (17:33 -0400)]
workbench: Add pipeline instance tag render test.
Sasha just tickled this, so we want to prevent future recurrences.
Tim Pierce [Fri, 25 Apr 2014 21:23:40 +0000 (17:23 -0400)]
Make sure an IOHandler is running when -serialize is on.
Use MakeUnixVolume to create new UnixVolumes, to ensure that an
IOHandler is started whenever necessary. (refs #2620)
Tom Clegg [Fri, 25 Apr 2014 21:10:12 +0000 (17:10 -0400)]
Fix crash when tags exist for items offered in selection widget.
Tim Pierce [Fri, 25 Apr 2014 20:58:32 +0000 (16:58 -0400)]
Cleaned up unit tests. (refs #2620)
Added a MockVolume implementation to use in unit tests for the
Keep front-end handlers.
Simplified IsValidLocator and keep_test.go:setup code.
Tim Pierce [Fri, 25 Apr 2014 20:58:32 +0000 (16:58 -0400)]
Cleaned up unit tests. (refs #2620)
Added a MockVolume implementation to use in unit tests for the
Keep front-end handlers.
Simplified IsValidLocator and keep_test.go:setup code.
Tom Clegg [Fri, 25 Apr 2014 20:53:13 +0000 (16:53 -0400)]
Merge branch 'master' into 1969-persistent-switch
Tom Clegg [Fri, 25 Apr 2014 20:42:40 +0000 (16:42 -0400)]
Increase contrast between active/inactive sides of toggle switch.
Tom Clegg [Fri, 25 Apr 2014 20:17:48 +0000 (16:17 -0400)]
Add tests for persistent/cache switch.
Peter Amstutz [Fri, 25 Apr 2014 19:44:47 +0000 (15:44 -0400)]
Merge branch 'master' into origin-2608-websocket-event-bus-alt2
Peter Amstutz [Fri, 25 Apr 2014 19:44:29 +0000 (15:44 -0400)]
Bugfix. Objects returned by owned_items are now sorted by uuid in order to get
a stable sort order when paging with limit and offset.
Peter Amstutz [Fri, 25 Apr 2014 19:40:54 +0000 (15:40 -0400)]
Resolving application_controller.rb merge conflicts, tests pass.
Tom Clegg [Fri, 25 Apr 2014 17:26:43 +0000 (13:26 -0400)]
Merge branch 'master' into 1969-persistent-switch
Conflicts:
services/api/app/controllers/application_controller.rb
Tom Clegg [Fri, 25 Apr 2014 16:56:02 +0000 (12:56 -0400)]
Merge branch '2505-update-docs'
refs #2505
Conflicts:
doc/api/methods/groups.html.textile.liquid
doc/api/methods/users.html.textile.liquid
doc/api/schema/Group.html.textile.liquid
Tom Clegg [Fri, 25 Apr 2014 15:54:53 +0000 (11:54 -0400)]
Add UUIDs in TR tags so automated tests can find them.
Peter Amstutz [Fri, 25 Apr 2014 15:25:03 +0000 (11:25 -0400)]
Merge remote-tracking branch 'origin/master' into origin-2608-websocket-event-bus-alt2
Conflicts:
services/api/app/controllers/application_controller.rb
services/api/db/schema.rb
services/api/test/test_helper.rb
Peter Amstutz [Fri, 25 Apr 2014 15:19:22 +0000 (11:19 -0400)]
Added tests, especially for error handling behavior. Fixed bugs found by tests.
Tom Clegg [Fri, 25 Apr 2014 14:07:36 +0000 (10:07 -0400)]
Merge branch '2640-folder-api'
refs #2640
Conflicts:
services/api/app/controllers/application_controller.rb
services/api/config/routes.rb
Tom Clegg [Fri, 25 Apr 2014 13:53:12 +0000 (09:53 -0400)]
Remove "Admin Guide" link from left nav.
Tom Clegg [Fri, 25 Apr 2014 00:15:48 +0000 (20:15 -0400)]
Untabify.
Tom Clegg [Fri, 25 Apr 2014 00:14:28 +0000 (20:14 -0400)]
Add persistent/cache toggle to collections table on dashboard.
Tom Clegg [Fri, 25 Apr 2014 00:06:23 +0000 (20:06 -0400)]
Remove unused tutorial_group and tutorial_links queries.
Tom Clegg [Fri, 25 Apr 2014 00:02:33 +0000 (20:02 -0400)]
Fix s/about/~/ substitution on dashboard.
Tom Clegg [Thu, 24 Apr 2014 23:52:09 +0000 (19:52 -0400)]
Add persistent/cache toggle to collections#show page.
Tom Clegg [Thu, 24 Apr 2014 23:22:33 +0000 (19:22 -0400)]
Move persistent/cache toggle into a partial.
Tim Pierce [Thu, 24 Apr 2014 22:02:49 +0000 (18:02 -0400)]
Added -serialize flag.
Added IORequest and IOResponse types for communicating I/O
requests over channels with a goroutine.
New IOHandler method on UnixVolume. IOHandler receives requests on a
command channel, handles them, and delivers responses. Whenever a
UnixVolume is created with a non-nil queue, an IOHandler must be started
to handle its requests.
UnixVolume methods Get and Put now handle external I/O requests. These
methods serialize I/O requests if serialization is enabled for that
volume; otherwise they call Read and Write directly.
New unit tests: TestGetSerialized and TestPutSerialized.
Refs #2620.
Tom Clegg [Thu, 24 Apr 2014 21:52:56 +0000 (17:52 -0400)]
Add persistent/cache switch to collections index page.
Misha Zatsman [Thu, 24 Apr 2014 21:01:30 +0000 (21:01 +0000)]
Fixing indentation. Closes #2688
Misha Zatsman [Thu, 24 Apr 2014 20:42:42 +0000 (20:42 +0000)]
Merge branch '2612-workbench-displays-user-storage'
closes #2612
Misha Zatsman [Thu, 24 Apr 2014 20:33:39 +0000 (20:33 +0000)]
Fixed indentation.
Misha Zatsman [Thu, 24 Apr 2014 20:12:53 +0000 (20:12 +0000)]
Merge branch 'master' of git.curoverse.com:arvados into 2612-workbench-displays-user-storage
Misha Zatsman [Thu, 24 Apr 2014 20:11:49 +0000 (20:11 +0000)]
Added link to storage page, replaced tabs with spaces.
Peter Amstutz [Thu, 24 Apr 2014 20:04:59 +0000 (16:04 -0400)]
Wrapped channel callback in exception handler.
Peter Amstutz [Thu, 24 Apr 2014 20:03:21 +0000 (16:03 -0400)]
Websocket tests now use database cleaner instead of ActiveRecord's
transactional fixtures because the transaction needs to commit in order for
NOTIFY/LISTEN to work. Fixed 'log' -> 'logs' table names in eventbus.rb.
First test for publishing an actual database change works.
Tom Clegg [Thu, 24 Apr 2014 19:37:45 +0000 (15:37 -0400)]
Fix & test edge cases (no script_parameters), fix pipeline instance fixture UUIDs
Tom Clegg [Thu, 24 Apr 2014 19:05:51 +0000 (15:05 -0400)]
Merge branch '2409-remove-unused-controllers'
closes #2409
Peter Amstutz [Thu, 24 Apr 2014 18:58:23 +0000 (14:58 -0400)]
Added websocket first tests for connecting and checking API token.
Tom Clegg [Thu, 24 Apr 2014 16:40:39 +0000 (12:40 -0400)]
Add detail about what script_version should look like.
Peter Amstutz [Thu, 24 Apr 2014 15:32:42 +0000 (11:32 -0400)]
Added test runner for websocket tests. Requires passenger standalone to be
installed.
Tom Clegg [Thu, 24 Apr 2014 14:40:59 +0000 (10:40 -0400)]
Fix admin user setup instructions, add some missing "bundle exec",
remove unnecessary "Create an API token" section.
Peter Amstutz [Thu, 24 Apr 2014 13:14:01 +0000 (09:14 -0400)]
Fixed bug whereby readable_by could return duplicate rows if there is more than
one permission granting the ability to read the row.
Reorganized readable_by query a bit to make it easier to follow.
Added test for ownership and permission links when reading entries in the logs table.
Tim Pierce [Thu, 24 Apr 2014 02:35:58 +0000 (22:35 -0400)]
Updated UnixVolume unit tests (refs #2620).
Tim Pierce [Thu, 24 Apr 2014 02:32:47 +0000 (22:32 -0400)]
Moved the MD5 verification check back to GetBlock.
Policy tests such as checksumming belong in the Keep front end. The back
end should be limited to moving data in and out of a volume. (refs #2620)
Tom Clegg [Thu, 24 Apr 2014 01:02:07 +0000 (21:02 -0400)]
Check sanity when applying filters, and provide useful error messages.
Tom Clegg [Wed, 23 Apr 2014 23:28:20 +0000 (19:28 -0400)]
Remove excess controllers and routes. Add tests to detect accidental future additions.
Tom Clegg [Wed, 23 Apr 2014 22:35:48 +0000 (18:35 -0400)]
Improve examples, explanations, typography, tests
Tim Pierce [Wed, 23 Apr 2014 22:09:24 +0000 (18:09 -0400)]
Added UnixVolume unit tests. (refs #2620)
Tom Clegg [Wed, 23 Apr 2014 21:31:14 +0000 (17:31 -0400)]
Merge branch 'master' into 2505-update-docs
Conflicts:
.gitignore
Misha Zatsman [Wed, 23 Apr 2014 21:20:57 +0000 (21:20 +0000)]
Added row to display totals.
Tom Clegg [Wed, 23 Apr 2014 21:06:51 +0000 (17:06 -0400)]
Merge branch 'master' of git.curoverse.com:arvados into 2640-folder-api
Conflicts:
services/api/db/schema.rb
services/api/test/test_helper.rb
Tom Clegg [Wed, 23 Apr 2014 21:00:39 +0000 (17:00 -0400)]
Rename jresponse test helper to json_response.
Misha Zatsman [Wed, 23 Apr 2014 20:54:45 +0000 (20:54 +0000)]
Merge branch 'master' of git.curoverse.com:arvados into 2612-workbench-displays-user-storage
Misha Zatsman [Wed, 23 Apr 2014 20:54:01 +0000 (20:54 +0000)]
Shortened date display, put long date view in mouseover text.
Tom Clegg [Wed, 23 Apr 2014 20:45:21 +0000 (16:45 -0400)]
Support filters=[["attr","=",nil]]
Tom Clegg [Wed, 23 Apr 2014 20:39:03 +0000 (16:39 -0400)]
Add tests, rename include_indirect to _linked, improve wording in
docs, improve offset/limit validation
Tom Clegg [Wed, 23 Apr 2014 20:36:41 +0000 (16:36 -0400)]
Add explanation comments to assertions.
Misha Zatsman [Wed, 23 Apr 2014 20:14:38 +0000 (20:14 +0000)]
Made sizes human readable, added measurement date column.
radhika chippada [Wed, 23 Apr 2014 19:01:41 +0000 (15:01 -0400)]
Story 2352: Adding state and components_summary is completed.
radhika chippada [Wed, 23 Apr 2014 18:36:06 +0000 (14:36 -0400)]
Merge branch 'master' into 2352-phased-pipeline-instance-state
Peter Amstutz [Wed, 23 Apr 2014 17:36:16 +0000 (13:36 -0400)]
Added teardown to all tests which resets Thread.current[:user] and friends to
nil. Fixed one faulty test that turned up as a result of this change.
Peter Amstutz [Wed, 23 Apr 2014 17:36:16 +0000 (13:36 -0400)]
Added teardown to all tests which resets Thread.current[:user] and friends to
nil. Fixed one faulty test that turned up as a result of this change.
Peter Amstutz [Wed, 23 Apr 2014 17:08:31 +0000 (13:08 -0400)]
Merge branch 'master' into origin-2608-websocket-event-bus-alt2
Peter Amstutz [Wed, 23 Apr 2014 17:00:03 +0000 (13:00 -0400)]
Security bug fix to act_as_system_user to restore correct user if an
exception is raised. Also adds tests for act_as_system_user.
Also a minor style cleanup of "== []" to ".empty?" and some additional
checks to test "refuse to activate a user before signing UA".
Misha Zatsman [Wed, 23 Apr 2014 16:11:45 +0000 (16:11 +0000)]
Merge branch 'master' of git.curoverse.com:arvados into 2612-workbench-displays-user-storage
Peter Amstutz [Wed, 23 Apr 2014 15:16:27 +0000 (11:16 -0400)]
Merge remote-tracking branch 'origin/master' into origin-2608-websocket-event-bus-alt2
Peter Amstutz [Wed, 23 Apr 2014 15:16:15 +0000 (11:16 -0400)]
Test helper now users ArvadosApiToken rack middleware to set current user.
Peter Amstutz [Wed, 23 Apr 2014 14:57:31 +0000 (10:57 -0400)]
- Added object_owner_uuid to logs table, which records the owner of the object
being described at the time of the log entry. Added migration.
- Added special case permission checks for reading logs table, and added
documentation comments on how permission checks work.
- Eventbus reuses readable_by and record_filters in determining what to publish
so provide consistent behavior between eventbus and regular API queries.
- Put most of apply_where_limit_order_params back into application_controller,
refactored record_filters into lib/
- All of this still needs testing.
Misha Zatsman [Wed, 23 Apr 2014 01:14:31 +0000 (01:14 +0000)]
Working users/storage page!
Misha Zatsman [Tue, 22 Apr 2014 23:00:00 +0000 (23:00 +0000)]
Have a new view showing users at /users/storage. No storage info yet, but it's a start.
Tim Pierce [Tue, 22 Apr 2014 21:19:43 +0000 (17:19 -0400)]
Made KeepVolumes a slice of Volume objects, not strings.
Moved more Unix-specific code into volume.go as part of the process.
Peter Amstutz [Tue, 22 Apr 2014 21:12:12 +0000 (17:12 -0400)]
Refactored load_filters_param and apply_where_limit_order_params into lib/
directory so that EventBus can use them. Started adding filtering to EventBus, this is incomplete.
Ward Vandewege [Tue, 22 Apr 2014 21:00:16 +0000 (17:00 -0400)]
Improve wording of the welcome e-mail a bit.
Ward Vandewege [Tue, 22 Apr 2014 20:55:34 +0000 (16:55 -0400)]
User.full_name should not contain just a space when first_name and
last_name are not set.
Add a test for that, too.
Ward Vandewege [Tue, 22 Apr 2014 20:06:00 +0000 (16:06 -0400)]
Properties should not have symbol keys. Our API runs on JSON, which does
not have symbol keys. We want to be consistent in our use of keys, so we
don't use symbol keys within the API server for object properties.
This fixes pre-authenticating users. Again.
Peter Amstutz [Tue, 22 Apr 2014 19:49:51 +0000 (15:49 -0400)]
Added websocketUrl to discovery document. Workbench websockets testing page
now uses endpoint from discovery discovery document. Also added
ARVADOS_WEBSOCKETS environment variable. If set, server will accept websocket
connections only and do not pass on any other type of requests.
Peter Amstutz [Tue, 22 Apr 2014 19:19:51 +0000 (15:19 -0400)]
Added permission checking to event bus so that it only report changes for
objects that the user has current read permission.
Ward Vandewege [Tue, 22 Apr 2014 19:18:14 +0000 (15:18 -0400)]
Fix test that was expecting a (now) incorrect number of links.
Ward Vandewege [Tue, 22 Apr 2014 19:16:01 +0000 (15:16 -0400)]
Set default value for
I18n.enforce_available_locales
in config/environments/test.rb.example
radhika chippada [Tue, 22 Apr 2014 18:24:55 +0000 (14:24 -0400)]
Merge branch 'master' into 2352-phased-pipeline-instance-state
Peter Amstutz [Tue, 22 Apr 2014 18:24:03 +0000 (14:24 -0400)]
Moves API token authentication from ApplicationController into ArvadosApiToken Rack middleware.
Rearranges rack middleware stack a bit to accomodate.
radhika chippada [Tue, 22 Apr 2014 18:00:20 +0000 (14:00 -0400)]
Use the renamed components_look_ready? method during migration.
radhika chippada [Tue, 22 Apr 2014 17:48:36 +0000 (13:48 -0400)]
Rename is_ready method to components_look_ready? and add additional tests for state change.
Ward Vandewege [Tue, 22 Apr 2014 17:37:59 +0000 (13:37 -0400)]
Create a can_login link for a new user object, even if there are already
stray can_login link objects for another user object with the same
e-mail address in the database. Add a test for that scenario, too.