Brett Smith [Mon, 24 Nov 2014 20:53:44 +0000 (15:53 -0500)]
4027: Bugfix update-gitolite.rb in Docker.
* Load a YAML library.
* Support ARVADOS_API_HOST_INSECURE, and set it in normal Docker use.
Brett Smith [Mon, 24 Nov 2014 20:53:00 +0000 (15:53 -0500)]
4027: Revamp SSH use in our Docker images.
* Don't install or run SSH in most of our Docker images. `docker
exec` is now preferred to inspect running images.
* Do run SSH on the API server, always, for Gitolite.
There is a feature regression here: the user's SSH key is not
automatically installed on the shell account. This needs to be fixed
another way. In the meantime, it's not difficult to run
`docker exec -ti --user=self shell /bin/bash`, and you can clone the
repository from the host system.
Tim Pierce [Mon, 8 Dec 2014 22:02:33 +0000 (17:02 -0500)]
Merge branch '4269-no-collection-uuid-in-script-params'
Refs #4269.
Tim Pierce [Mon, 8 Dec 2014 21:44:17 +0000 (16:44 -0500)]
4269: clean up uuid regex matching
Code review feedback:
* Improved name for validation "no_collection_uuids" to
"ensure_no_collection_uuids_in_script_params"
* Added ArvadosModel.uuid_regex (along the lines of uuid_like_pattern)
and substituted it for hardcoded uuid regexes throughout the code.
Radhika Chippada [Mon, 8 Dec 2014 21:34:05 +0000 (16:34 -0500)]
closes #4477
closes #4719
Merge branch '4477-no-job-log'
Tom Clegg [Sun, 7 Dec 2014 23:09:00 +0000 (18:09 -0500)]
Reset listener=nil before running main() from test cases, so
waitForListener() does not get confused by listener!=nil left over
from previous tests. Fixes intermittent test failures.
refs #3828
Tom Clegg [Sun, 7 Dec 2014 08:06:04 +0000 (03:06 -0500)]
4533: Wait up to 10s for "lock tables". refs #4533
Tom Clegg [Fri, 5 Dec 2014 18:25:12 +0000 (13:25 -0500)]
Merge branch '4156-no-gemfile-lock-for-gem' refs #4156
Tom Clegg [Fri, 5 Dec 2014 18:24:49 +0000 (13:24 -0500)]
4533: Lock all tables, not just the ones with fixtures. refs #4533
Peter Amstutz [Fri, 5 Dec 2014 15:44:07 +0000 (10:44 -0500)]
Merge branch '4314-trigger-job-update' closes #4314
Radhika Chippada [Fri, 5 Dec 2014 15:15:44 +0000 (10:15 -0500)]
closes #4559
Merge branch '4559-long-component-names'
Radhika Chippada [Fri, 5 Dec 2014 15:14:42 +0000 (10:14 -0500)]
4559: missing quote
Radhika Chippada [Fri, 5 Dec 2014 15:10:01 +0000 (10:10 -0500)]
Merge branch 'master' into 4559-long-component-names
Radhika Chippada [Fri, 5 Dec 2014 14:58:04 +0000 (09:58 -0500)]
closes #4638
Merge branch '4638-ssh-notification'
Radhika Chippada [Fri, 5 Dec 2014 14:57:39 +0000 (09:57 -0500)]
Merge branch 'master' into 4638-ssh-notification
Radhika Chippada [Fri, 5 Dec 2014 14:57:12 +0000 (09:57 -0500)]
4638: update test to reflect link text change.
Radhika Chippada [Fri, 5 Dec 2014 14:34:32 +0000 (09:34 -0500)]
closes #4638
Merge branch '4638-ssh-notification'
Radhika Chippada [Fri, 5 Dec 2014 14:33:33 +0000 (09:33 -0500)]
4638: update link text
Radhika Chippada [Fri, 5 Dec 2014 14:22:53 +0000 (09:22 -0500)]
Merge branch 'master' into 4638-ssh-notification
Tom Clegg [Fri, 5 Dec 2014 06:49:26 +0000 (01:49 -0500)]
4465: Link to arvados.org revision history instead of github.com code view.
Also, remove spurious helper inclusions, and fix 'locally modified'
detection (it was broken because "" is truthy).
refs #4465
Tim Pierce [Thu, 4 Dec 2014 22:12:57 +0000 (17:12 -0500)]
4269: added job validation forbidding collection uuids
Added Job validation no_collection_uuids, searching recursively through
script_parameters for any field matching a collection uuid pattern.
Radhika Chippada [Thu, 4 Dec 2014 21:38:52 +0000 (16:38 -0500)]
4719: change "There are currently no job in the queue" to "your" queue.
Radhika Chippada [Thu, 4 Dec 2014 21:28:50 +0000 (16:28 -0500)]
4477: don't crash on no job log
Radhika Chippada [Thu, 4 Dec 2014 21:05:27 +0000 (16:05 -0500)]
closes #4525
closes #4694
Merge branch '4525-remove-stale-clippy-code'
Radhika Chippada [Thu, 4 Dec 2014 20:58:00 +0000 (15:58 -0500)]
4525: when dataclass is Class, return attrvalue similar to the Array case.
Radhika Chippada [Thu, 4 Dec 2014 20:23:11 +0000 (15:23 -0500)]
4525: delete assets/stylesheets/selection.css
Radhika Chippada [Thu, 4 Dec 2014 18:48:10 +0000 (13:48 -0500)]
4525: link_to to be used when dataclass is a String or Fixnum
Radhika Chippada [Thu, 4 Dec 2014 18:32:00 +0000 (13:32 -0500)]
4525: keep link_to in application_helper, which will be used when attr value is a String or Fixnum etc
radhika [Thu, 4 Dec 2014 18:12:23 +0000 (13:12 -0500)]
4525: remove add_form_selection_sources (one more time) and all references.
radhika [Thu, 4 Dec 2014 17:25:51 +0000 (12:25 -0500)]
Merge branch 'master' into 4525-remove-stale-clippy-code
Tim Pierce [Thu, 4 Dec 2014 16:48:27 +0000 (11:48 -0500)]
Merge branch '4465-workbench-version-links'
Fixes #4465.
Tim Pierce [Thu, 4 Dec 2014 16:47:22 +0000 (11:47 -0500)]
4465: add trailing /? to regexes
Per code review @ #4465-7
Tim Pierce [Thu, 4 Dec 2014 16:26:58 +0000 (11:26 -0500)]
4465: test for regex link targets
The goal of this story is that the "report issue" dialog includes links
to a Github or Redmine page corresponding to the software versions for
Workbench and the API server, so the test should ensure not just that
there's a link with a given text, but that its target is a Github page
corresponding to a hexadecimal commit hash.
Tim Pierce [Thu, 4 Dec 2014 15:50:44 +0000 (10:50 -0500)]
4465: added api_version_text helper.
Per code review: the source_version returned in the discovery document
may include the string "-modified" if the API server is running from a
locally modified repository. The api_version_link that we generate for
this version must take that into account.
Peter Amstutz [Thu, 4 Dec 2014 14:55:06 +0000 (09:55 -0500)]
Touch the "crunch_refresh_trigger" file when the state changes. This notifies
all crunch-job instances to check the cancelled and state flags, so if a
running job changes state unexpectedly, it will be treated as a cancellation. refs #4314
Tom Clegg [Thu, 4 Dec 2014 01:50:46 +0000 (20:50 -0500)]
4533: Fix wrong lock mode. refs #4533
radhika [Wed, 3 Dec 2014 23:45:45 +0000 (18:45 -0500)]
4525: remove select_form_sources function
radhika [Wed, 3 Dec 2014 23:21:19 +0000 (18:21 -0500)]
Merge branch '4525-remove-stale-clippy-code-TC' into 4525-remove-stale-clippy-code
radhika [Wed, 3 Dec 2014 23:16:08 +0000 (18:16 -0500)]
4525: restore add_form_selection_sources function
Tom Clegg [Wed, 3 Dec 2014 22:26:23 +0000 (17:26 -0500)]
4525: Call enable_disable_selection_actions once per container to
avoid crosstalk between containers.
Also, separate event binding setup from enable/disable hook, and avoid
binding many copies of the selection dispatch click handler.
Tom Clegg [Wed, 3 Dec 2014 21:54:51 +0000 (16:54 -0500)]
Merge branch '4533-lock-tables-first' refs #4533
Peter Amstutz [Wed, 3 Dec 2014 21:08:58 +0000 (16:08 -0500)]
Update version pin of arvados-cli gem. refs #3698
radhika [Wed, 3 Dec 2014 20:53:39 +0000 (15:53 -0500)]
4525: add test to verify selection on tab switching.
Tom Clegg [Wed, 3 Dec 2014 20:40:18 +0000 (15:40 -0500)]
4533: Lock all tables before deleting contents.
radhika [Wed, 3 Dec 2014 18:00:35 +0000 (13:00 -0500)]
4525: remove stale clippy code
Tim Pierce [Wed, 3 Dec 2014 16:56:08 +0000 (11:56 -0500)]
4465: add API/Workbench Github links to help modal
Updated the help modal dialog to use the following links for API version
and Workbench version:
https://github.com/curoverse/arvados/tree/#{api_version}/services/api
https://github.com/curoverse/arvados/tree/#{wb_version}/apps/workbench
Refactored some code into a VersionHelper to simplify testing.
Also updated the Rails.configuration.source_version settings for both
API server and Workbench to strip trailing newlines (which were
screwing up the URLs).
Brett Smith [Wed, 3 Dec 2014 16:55:38 +0000 (11:55 -0500)]
Merge branch '4291-workbench-collection-sharing-button-wip'
Closes #4291, #4676, #4688.
Brett Smith [Wed, 3 Dec 2014 15:28:42 +0000 (10:28 -0500)]
4291: Workbench says explicitly when collection sharing is disabled.
Brett Smith [Thu, 27 Nov 2014 02:35:07 +0000 (21:35 -0500)]
4291: Workbench Collection sharing buttons are actual buttons.
This prevents users from trying to open them in new windows/tabs and
getting a 404 response.
I had to rework the pipeline instance comparison JavaScript because it
was disabling the collection share button on page load. All that was
really necessary was making sure the event only fires when there
actually is a form#compare, but I did some other cleanup in the
process of learning that.
Brett Smith [Mon, 1 Dec 2014 16:07:07 +0000 (11:07 -0500)]
4676: Collection sharing popup is always JavaScript.
This fixes an issue where the response would sometimes be sent with
Content-Type: text/html. We thought it might be a race condition with
AJAX, but the browser was sending a correct Accept: header.
Brett Smith [Wed, 3 Dec 2014 16:24:52 +0000 (11:24 -0500)]
4291: Add Workbench controller tests for collection sharing.
I wrote these while diagnosing another problem.
Brett Smith [Wed, 26 Nov 2014 16:34:53 +0000 (11:34 -0500)]
4291: Workbench uses .prop() to set element disabled property.
Per <http://api.jquery.com/prop/>: "The .prop() method should be used
to set disabled and checked instead of the .attr() method."
Brett Smith [Tue, 25 Nov 2014 22:57:47 +0000 (17:57 -0500)]
4291: Clean up HTTP methods in Workbench URL generators.
According to the docs at
<http://api.rubyonrails.org/files/actionview/lib/action_view/helpers/url_helper_rb.html>:
* `button_to` and `form_for` take :method as a symbol.
* `link_to` takes :method as a symbol, and only supports :delete,
:post, :patch, and :put. Any link that should be done with GET
should not have a method specified.
* Note that `form_tag` *does* take a string, so not every method
should be symbolized.
Brett Smith [Wed, 3 Dec 2014 16:10:23 +0000 (11:10 -0500)]
Merge branch '4705-fuse-collections-from-keep-wip'
Closes #4705, #4708.
Brett Smith [Wed, 3 Dec 2014 15:07:26 +0000 (10:07 -0500)]
4705: FUSE driver can read Collections that only exist in Keep.
Brett Smith [Wed, 3 Dec 2014 15:12:40 +0000 (10:12 -0500)]
4705: Fix FUSE exception logging.
logger.exception() doesn't take the exception as an argument, it takes
a message like all the other logger methods. It gets the exception
information from sys.exc_info().
Brett Smith [Wed, 3 Dec 2014 13:59:22 +0000 (08:59 -0500)]
4705: Refactor mount creation in FUSE tests.
Brett Smith [Wed, 3 Dec 2014 14:45:44 +0000 (09:45 -0500)]
4705: Add CollectionReader.api_response() to PySDK.
The FUSE driver wants this information.
Ward Vandewege [Wed, 3 Dec 2014 15:25:43 +0000 (10:25 -0500)]
Docker: passenger only needs to support ruby, so specify that explicity
when building the apache module.
No issue #
Tom Clegg [Tue, 2 Dec 2014 23:56:25 +0000 (18:56 -0500)]
4533: use "extend" when calling module methods from class methods. refs #4533
Seems to matter only in production: config.cache_classes?
Brett Smith [Tue, 2 Dec 2014 21:28:49 +0000 (16:28 -0500)]
Merge branch '4591-websockets-raise-oom-wip'
Closes #4591, #4701.
Brett Smith [Tue, 2 Dec 2014 15:23:21 +0000 (10:23 -0500)]
4591: Websockets server fetches fewer logs at a time.
Most of the out of memory errors we're seeing happen in the PostgreSQL
driver, which runs out of space to store results. Because Log records
are relatively large (holding two other records as JSON text),
fetching fewer in a batch should noticeably improve memory use. I
don't expect this to end the crashing, though—it seems like the
Websockets server grows large for a variety of reasons. Hopefully
this change will help make some of the others clearer.
Brett Smith [Tue, 2 Dec 2014 14:59:55 +0000 (09:59 -0500)]
4591: Avoid capturing critical exceptions in Websockets server.
Based on the current logs, the troubles we're currently hitting in
Websockets happen in push_events, where all the database work
happens. These exceptions wrap PostgreSQL driver errors; they inherit
from StandardError, so they're being caught by the rescue block.
This commit re-raises those exceptions, which will cause the server to
crash (and presumably be restarted by a supervisor like runit).
We do sometimes see NoMemoryError, but the block to catch is in
ineffective because it usually manifests earlier in on_connect, when
the connection is first made. In this case, Ruby's default exception
handling provides the behavior we want, so just remove the block.
In keeping with the theme of improved exception handling, I tightened
up the bad request detection.
Tim Pierce [Tue, 2 Dec 2014 21:17:26 +0000 (16:17 -0500)]
Merge branch '4621-crunch-memory-usage'
Refs #4621.
Tim Pierce [Tue, 2 Dec 2014 21:12:42 +0000 (16:12 -0500)]
4621: undo lean_uri_escape changes
radhika [Tue, 2 Dec 2014 21:10:53 +0000 (16:10 -0500)]
closes #4645
Merge branch '4645-log-in-graph'
Tim Pierce [Tue, 2 Dec 2014 21:06:02 +0000 (16:06 -0500)]
4621: drop unused variable $output_in_keep
Tim Pierce [Tue, 2 Dec 2014 20:53:37 +0000 (15:53 -0500)]
4621: code review feedback
Removed @jobstep == 1 optimization (no longer appropriate now that we
expect this function to always return the hash of a collection).
Clarified error message for timeout errors.
Tim Pierce [Tue, 2 Dec 2014 20:32:52 +0000 (15:32 -0500)]
4621: collate_output pipes to python
Rewrote collate_output as create_output_collection, writing its output
data to a Python subprocess that invokes
arvados.api().collections().create(). Writing very large collection
manifests in-process makes Arvados.pm consume inordinate amounts of
memory.
Refs #4621.
radhika [Tue, 2 Dec 2014 16:56:16 +0000 (11:56 -0500)]
4645: log files in provenance graph can be clicked.
Tom Clegg [Tue, 2 Dec 2014 16:05:24 +0000 (11:05 -0500)]
4156: Remove Gemfile.lock because this is a gem, not an application.
Tom Clegg [Tue, 2 Dec 2014 15:22:06 +0000 (10:22 -0500)]
4699: Fix crash when collection has tags but no name. closes #4699
Ward Vandewege [Tue, 2 Dec 2014 15:14:41 +0000 (10:14 -0500)]
Fix syntax error in workbench diagnostics_test_helper.rb
No issue #
radhika [Tue, 2 Dec 2014 13:20:34 +0000 (08:20 -0500)]
4638: trailing white space
radhika [Tue, 2 Dec 2014 13:16:47 +0000 (08:16 -0500)]
4638: update ssh notification link to point to manage account page.
radhika [Tue, 2 Dec 2014 03:43:27 +0000 (22:43 -0500)]
Merge branch 'master' into 4559-long-component-names
radhika [Tue, 2 Dec 2014 03:42:26 +0000 (22:42 -0500)]
4559: wrap long component name
Tom Clegg [Tue, 2 Dec 2014 02:18:42 +0000 (21:18 -0500)]
4533: Pass CORS test when no omniauth provider is configured. refs #4533
radhika [Tue, 2 Dec 2014 00:52:21 +0000 (19:52 -0500)]
closes #4487
closes #4558
Merge branch '4487-and-4558'
radhika [Tue, 2 Dec 2014 00:50:14 +0000 (19:50 -0500)]
Merge branch 'master' into 4487-and-4558
radhika [Tue, 2 Dec 2014 00:44:51 +0000 (19:44 -0500)]
4487: updates from review feedback
Tom Clegg [Mon, 1 Dec 2014 23:02:27 +0000 (18:02 -0500)]
Merge branch '3781-browser-friendly-servers' refs #3781
radhika [Mon, 1 Dec 2014 22:15:18 +0000 (17:15 -0500)]
Merge branch 'master' into 4487-and-4558
radhika [Mon, 1 Dec 2014 22:12:46 +0000 (17:12 -0500)]
closes #4644
Merge branch '4644-collection-file-filtering'
radhika [Mon, 1 Dec 2014 22:10:09 +0000 (17:10 -0500)]
Merge branch 'master' into 4644-collection-file-filtering
radhika [Mon, 1 Dec 2014 22:08:24 +0000 (17:08 -0500)]
4644: do not add filterable to directories
radhika [Mon, 1 Dec 2014 20:10:32 +0000 (15:10 -0500)]
4487: Omit "Remove selected" selection option when the current user cannot write to the project.
4558: Remove ellipsis from Selection dropdown name.
Tom Clegg [Mon, 1 Dec 2014 19:39:44 +0000 (14:39 -0500)]
Merge branch '4533-remote-reset' closes #4533
Conflicts:
apps/workbench/Gemfile.lock
Tom Clegg [Mon, 1 Dec 2014 18:28:12 +0000 (13:28 -0500)]
4533: Consolidate database-reset tests. Fix up ensure/reload_routes! blocks.
radhika [Mon, 1 Dec 2014 18:27:10 +0000 (13:27 -0500)]
4644: fix div end tag placement and add filterable to directories as well.
Tom Clegg [Mon, 1 Dec 2014 17:52:05 +0000 (12:52 -0500)]
4533: Remove config flag from default section, too.
Brett Smith [Mon, 1 Dec 2014 16:55:31 +0000 (11:55 -0500)]
Merge branch '4501-fuse-by-id-subdirectory-wip'
Closes #4501, #4675.
Brett Smith [Tue, 25 Nov 2014 20:24:08 +0000 (15:24 -0500)]
4501: FUSE exposes by_id subdirectory when run with --by-id.
This makes it possible for people to develop code against their own
normal Keep mount, and then have it work as expected in Crunch (which
uses --by-id for backward compatibility).
I considered adding a second inode for by_id that pointed to the same
underlying MagicDirectory instance. Unfortunately, the current
implementation would make it difficult to avoid exposing infinitely
recursing by_id subdirectories, and that seemed like a bigger problem
than the relatively small overhead of having two MagicDirectory
instances. (The Keep client will use comparatively more RAM, and it
will use the same block cache for both directories, which should keep
it relatively under control.)
Brett Smith [Tue, 25 Nov 2014 17:03:32 +0000 (12:03 -0500)]
4501: Restore FUSE FuseTagsUpdateTest.
This test hasn't been running in a while because it defined
runRealTest rather than runTest. The old code predates Collection
UUIDs, so it had to be updated to deal with those.
Tom Clegg [Mon, 1 Dec 2014 15:58:25 +0000 (10:58 -0500)]
Merge branch '4595-node-list-select' closes #4681
Ward Vandewege [Mon, 1 Dec 2014 14:48:01 +0000 (09:48 -0500)]
Fix typos in documentation.
This closes #4518
Tom Clegg [Sun, 30 Nov 2014 02:24:57 +0000 (21:24 -0500)]
4595: Merge branch 'master' into 4595-node-list-select
Tom Clegg [Sun, 30 Nov 2014 02:05:45 +0000 (21:05 -0500)]
4595: Fix nodes.list?select=[...] crash when is_admin. Also, do not ignore where/limit/order.
Phil Hodgson [Fri, 28 Nov 2014 11:58:45 +0000 (12:58 +0100)]
Merge branch '4233-graph-job-stats' closes #4233
Phil Hodgson [Fri, 28 Nov 2014 11:13:09 +0000 (12:13 +0100)]
4233: websocket test of log charting should look at the right datapoint