Tim Pierce [Wed, 1 Oct 2014 20:52:17 +0000 (16:52 -0400)]
3782: code review feedback
* Fixed whitespace, JavaScript style in _show_log.html.erb
* Removed unused bytecount variable from file_enumerator
* Changed the new job and collection fixtures to have the job uuid match
the uuid listed in the log.
Tim Pierce [Wed, 1 Oct 2014 20:04:05 +0000 (16:04 -0400)]
3782: added state to job fixture
Tim Pierce [Wed, 1 Oct 2014 19:43:15 +0000 (15:43 -0400)]
Merge branch 'master' into 3782-large-job-logs
Conflicts:
services/api/test/fixtures/collections.yml
services/api/test/fixtures/jobs.yml
Tom Clegg [Wed, 1 Oct 2014 19:36:46 +0000 (15:36 -0400)]
Merge branch '3782-stub-file-content' refs #3782
Tom Clegg [Wed, 1 Oct 2014 19:35:33 +0000 (15:35 -0400)]
3782: Merge branch 'master' into 3782-stub-file-content
Tom Clegg [Wed, 1 Oct 2014 19:12:07 +0000 (15:12 -0400)]
3782: Use stubbed file content for "inactive user can retrieve user agreement" test.
Tim Pierce [Wed, 1 Oct 2014 18:59:30 +0000 (14:59 -0400)]
Merge branch '4000-rerun-pipeline-changed-template'
Closes #4000.
Tim Pierce [Wed, 1 Oct 2014 18:58:58 +0000 (14:58 -0400)]
4000: update both functional tests.
Tim Pierce [Wed, 1 Oct 2014 18:28:38 +0000 (14:28 -0400)]
4000: tighten up functional test
Updated the test to ensure that a copied pipeline instance actually has
the expected script_parameters from both the source instance and source
template, respectively.
Peter Amstutz [Wed, 1 Oct 2014 18:23:21 +0000 (14:23 -0400)]
Use job state field instead of running/success columns. refs #3898
Tim Pierce [Wed, 1 Oct 2014 17:50:53 +0000 (13:50 -0400)]
3782: bugfix and added integration test
* Fixed bug where log viewer would always request partial log and receive
206, even when total log size is shorter than log_viewer_max_bytes.
* Added integration tests:
** set up KEEP_LOCAL_STORE with dummy log
** test retrieving full job log
** test retrieving partial job log
Tom Clegg [Wed, 1 Oct 2014 16:08:01 +0000 (12:08 -0400)]
3782: Merge branch 'master' into 3782-stub-file-content
Tom Clegg [Wed, 1 Oct 2014 16:07:58 +0000 (12:07 -0400)]
3782: Remove obsolete helper method.
Peter Amstutz [Wed, 1 Oct 2014 13:47:01 +0000 (09:47 -0400)]
Merge branch '4004-restore-dashboard-buttons' closes #4004
Peter Amstutz [Wed, 1 Oct 2014 13:46:14 +0000 (09:46 -0400)]
4004: Add newlines for readability
Peter Amstutz [Wed, 1 Oct 2014 01:51:41 +0000 (21:51 -0400)]
3899: Fix for counting complete/failed components refs #3899
Tim Pierce [Tue, 30 Sep 2014 22:07:15 +0000 (18:07 -0400)]
4000: fix copying pipeline instances with newer templates
* When copying script parameters from a pipeline instance, check that
the component exists in the source instance before blindly
dereferencing it.
* Added tests for copying when components=use_latest and when
script=use_same (the two edge cases exposed by this bug)
Peter Amstutz [Tue, 30 Sep 2014 19:40:37 +0000 (15:40 -0400)]
4004: Rename "Compute status" to "Compute and job status". Added integration
tests for buttons. Reduced dashboard page rendering time by at least 25% by
batching certain API server requests (previously happing per-object),
Tim Pierce [Mon, 29 Sep 2014 22:25:36 +0000 (18:25 -0400)]
3782: check for Content-Range header in response
Change the logic for detecting whether the log has been truncated to:
* response status code is 206
* a Content-Range header is present with 'bytes 0-x/y'
* x + 1 < y
Add a "download full log" link that is present when the full log is
available to be viewed.
Tim Pierce [Tue, 30 Sep 2014 17:52:38 +0000 (13:52 -0400)]
Merge branch '3961-uuid-assignment-not-permitted'
Closes #3961.
Tim Pierce [Tue, 30 Sep 2014 17:51:54 +0000 (13:51 -0400)]
3961: fix FuseSharedTest
Added new active_user collection to the FuseSharedTest.
Tim Pierce [Tue, 30 Sep 2014 17:01:07 +0000 (13:01 -0400)]
Merge branch '3961-uuid-assignment-not-permitted'
Closes #3961.
Tim Pierce [Tue, 30 Sep 2014 16:59:40 +0000 (12:59 -0400)]
3961: more explicit assertions and error text
Tom Clegg [Tue, 30 Sep 2014 14:57:13 +0000 (10:57 -0400)]
3782: Isolate file_enumerator stubbing to the current test. Introduce mocha.
Tim Pierce [Tue, 30 Sep 2014 04:42:16 +0000 (00:42 -0400)]
3961: test creating subprojects under home with duplicate names
New tests:
* unprivileged user creating a subproject under their home project, with
an existing name, returns 422
* unprivileged user creating a subproject under their home project, with
an existing name, and ensure_unique_name=true, succeeds
Tim Pierce [Mon, 29 Sep 2014 21:55:17 +0000 (17:55 -0400)]
3782: keep log viewer code in _show_log.html.erb
Keep log-related restrictions in the log viewer and not in general
purpose workbench code:
* Add Rails.configuration.log_viewer_max_bytes to specify the maximum
number of log bytes to display
* The log viewer specifies a byte limit via the HTTP Range header. The
Content-Length of the response is set to the minimum of the 'size'
query parameter and the byte range. If the log appears to have been
truncated, the viewer reports it in the 'log_viewer_overview' pane.
* CollectionsController.FileStreamer either delivers the entire file
or exactly opts[:maxbytes] bytes, whichever comes first. It does not
add any log-specific message.
Brett Smith [Mon, 29 Sep 2014 20:07:55 +0000 (16:07 -0400)]
3866: PySDK KeepClient accommodates services with IPv6 addresses.
I thought there was going to be a nicer way to construct URLs than
this, but urllib.urlunparse is still expecting the host+port as a
single string, so this approach is easier. Closes #3866.
Tim Pierce [Mon, 29 Sep 2014 18:01:00 +0000 (14:01 -0400)]
3782: print log lines compatible with the log viewer
When the log is truncated, make it parsable by the log viewer regex in
addToLogViewer().
Brett Smith [Mon, 29 Sep 2014 16:28:36 +0000 (12:28 -0400)]
Merge branch '3848-egg-default-git-tag-wip'
Closes #3848, #3952.
Brett Smith [Fri, 26 Sep 2014 21:06:15 +0000 (17:06 -0400)]
3848: Package version numbers use UTC timestamps.
Per note-9 in the issue.
Brett Smith [Mon, 22 Sep 2014 20:45:19 +0000 (16:45 -0400)]
3848: Python packages build with git tag by default.
This moves the build logic that we currently encode in Jenkins into
our setup.py, and makes it easier for developers to have versions in
sync with real users.
radhika [Mon, 29 Sep 2014 15:13:50 +0000 (11:13 -0400)]
closes #3889
Merge branch '3889-functional-testing'
Tim Pierce [Mon, 29 Sep 2014 15:06:49 +0000 (11:06 -0400)]
3961: reset object UUID when ensure_unique_name is set
When saving an object that has to be renamed with ensure_unique_name,
force @object.uuid to nil so that validate_uuid will not be confused
into thinking we are trying to reassign the uuid.
radhika [Mon, 29 Sep 2014 14:50:36 +0000 (10:50 -0400)]
Merge branch 'master' into 3889-functional-testing
Tom Clegg [Mon, 29 Sep 2014 14:32:00 +0000 (10:32 -0400)]
Merge branch '3616-live-stream' closes #3616
radhika [Sat, 27 Sep 2014 01:50:16 +0000 (21:50 -0400)]
Merge branch 'master' into 3889-functional-testing
radhika [Sat, 27 Sep 2014 01:48:51 +0000 (21:48 -0400)]
3889: add a new integration tester for users controller. Refactor code so that users functional and integration tests can reuse some of the helper methods.
Tim Pierce [Fri, 26 Sep 2014 19:38:45 +0000 (15:38 -0400)]
3782: restore default of no maxbytes
Use the 'size' query parameter to specify the limit of log bytes to
display for a job. If no 'size' parameter is present, the FileStreamer
class reads up to 2**16 bytes from the API server.
Peter Amstutz [Fri, 26 Sep 2014 20:44:35 +0000 (16:44 -0400)]
Merge branch '3871-non-ascii-project-names' closes #3871
Tom Clegg [Fri, 26 Sep 2014 20:26:27 +0000 (16:26 -0400)]
3616: Use "ensure" to close response stream.
Peter Amstutz [Fri, 26 Sep 2014 20:06:28 +0000 (16:06 -0400)]
3871: Pass on UnicodeEncodeError. Don't return those entries in the directory
listing because the user won't be able to access them anyway. Add --encoding
parameter to command line to allow the user to specify desired filesystem
encoding.
radhika [Fri, 26 Sep 2014 20:03:30 +0000 (16:03 -0400)]
Merge branch 'master' into 3889-functional-testing
Conflicts:
services/fuse/tests/test_mount.py
Tim Pierce [Fri, 26 Sep 2014 19:51:10 +0000 (15:51 -0400)]
Merge branch '3901-component-rendering-errors'
Refs #3901.
Tom Clegg [Fri, 26 Sep 2014 19:46:09 +0000 (15:46 -0400)]
3616: Use ActionController::Live to avoid buffering entire response in memory.
Tim Pierce [Fri, 26 Sep 2014 19:42:12 +0000 (15:42 -0400)]
Merge branch 'master' into 3901-component-rendering-errors
Conflicts:
apps/workbench/app/helpers/pipeline_instances_helper.rb
radhika [Fri, 26 Sep 2014 19:33:40 +0000 (15:33 -0400)]
closes #3836
Merge branch '3836-remove-collection-from-project-bug'
radhika [Fri, 26 Sep 2014 19:32:52 +0000 (15:32 -0400)]
Merge branch 'master' into 3836-remove-collection-from-project-bug
radhika [Fri, 26 Sep 2014 19:30:33 +0000 (15:30 -0400)]
3889: minor test assertion updates
radhika [Fri, 26 Sep 2014 18:44:53 +0000 (14:44 -0400)]
3889: remove the job fixture "job_with_unnormalized_output_and_log" and instead use "foobar"
Tim Pierce [Fri, 26 Sep 2014 17:45:43 +0000 (13:45 -0400)]
3901: added unit test for pipeline rendering
radhika [Fri, 26 Sep 2014 17:35:14 +0000 (13:35 -0400)]
Merge branch 'master' into 3889-functional-testing
Conflicts:
services/api/test/fixtures/jobs.yml
radhika [Fri, 26 Sep 2014 17:24:56 +0000 (13:24 -0400)]
3889: some monir assertion updates.
Tom Clegg [Fri, 26 Sep 2014 15:29:38 +0000 (11:29 -0400)]
Fix typo in error message. Refs #3961
Peter Amstutz [Fri, 26 Sep 2014 14:53:42 +0000 (10:53 -0400)]
3871: Encode/decode file and directory names to UTF-8
Peter Amstutz [Fri, 26 Sep 2014 14:43:02 +0000 (10:43 -0400)]
4004: Put "All jobs/pipelines/collections" buttons back onto dashboard. Also
tweak minimum height of top panels so they line up.
Peter Amstutz [Fri, 26 Sep 2014 14:31:49 +0000 (10:31 -0400)]
Merge branch '3899-crunch-use-job-state' closes #3899
Peter Amstutz [Fri, 26 Sep 2014 14:23:03 +0000 (10:23 -0400)]
3899: Uncomment line that was commented out for debugging and committed by mistake.
radhika [Fri, 26 Sep 2014 14:22:24 +0000 (10:22 -0400)]
3889: add "#{user} can get collection using portable data hash" test
Peter Amstutz [Fri, 26 Sep 2014 14:20:15 +0000 (10:20 -0400)]
3899: pipeline_instances_helper: Don't set :state if it's already set. Add newline to jobs.yml.
Peter Amstutz [Fri, 26 Sep 2014 13:55:43 +0000 (09:55 -0400)]
Merge branch '3168-crunch-git-fetch' closes #3168
Peter Amstutz [Fri, 26 Sep 2014 13:48:58 +0000 (09:48 -0400)]
Remove useless take() and untake() methods.
Peter Amstutz [Fri, 26 Sep 2014 13:47:52 +0000 (09:47 -0400)]
3168: Instead of crashing using save! log an error and go to the next job.
Peter Amstutz [Fri, 26 Sep 2014 13:01:22 +0000 (09:01 -0400)]
Merge remote-tracking branch 'origin/master' into 3899-crunch-use-job-state
Peter Amstutz [Fri, 26 Sep 2014 12:41:58 +0000 (08:41 -0400)]
3899: jobs_controller uses state = Queued instead of multiple state columns.
Updated fixture so that tests pass.
Tom Clegg [Fri, 26 Sep 2014 05:46:50 +0000 (01:46 -0400)]
Merge branch '3991-docker-workbench-address' closes #3991
radhika [Fri, 26 Sep 2014 02:25:16 +0000 (22:25 -0400)]
3889: update the fuse test to expect the newly added pipeline instances.
Tom Clegg [Fri, 26 Sep 2014 01:55:17 +0000 (21:55 -0400)]
3991: Merge branch 'master' into 3991-docker-workbench-address
Peter Amstutz [Fri, 26 Sep 2014 01:26:27 +0000 (21:26 -0400)]
3168: Fail on git tag collision instead of putting job back into the queue.
Peter Amstutz [Fri, 26 Sep 2014 00:41:41 +0000 (20:41 -0400)]
3899: Set :state in pipeline_instance_helper.rb and remove Job::state.
Tom Clegg [Thu, 25 Sep 2014 23:46:08 +0000 (19:46 -0400)]
3991: Fix config checks in admin_notifier.
radhika [Thu, 25 Sep 2014 21:12:55 +0000 (17:12 -0400)]
Merge branch 'master' into 3889-functional-testing
radhika [Thu, 25 Sep 2014 21:11:31 +0000 (17:11 -0400)]
3889: Since all offending tests are fixed, update test_helper to generate an error if any functional test performs more than one action in on test in the future.
radhika [Thu, 25 Sep 2014 20:43:54 +0000 (16:43 -0400)]
3889: update the test "update script_parameters one at a time using merge param" to use fixture instead of create a new pipeline instance.
Tom Clegg [Thu, 25 Sep 2014 20:30:33 +0000 (16:30 -0400)]
3991: Change docker default to "no root url redirect". Make "not found" message more friendly.
Tim Pierce [Thu, 25 Sep 2014 20:20:48 +0000 (16:20 -0400)]
Merge branch 'master' into 3901-component-rendering-errors
Tim Pierce [Thu, 25 Sep 2014 19:08:18 +0000 (15:08 -0400)]
3901: allow job to be either Hash or Job
Refactoring to ensure that a component "job" data structure may either
be a Hash (parsed directly from the component's JSON representation) or
a real Job object retrieved from the database.
When rendering a pipeline, parse the :started_at and :finished_at
timestamp fields, respectively, if necessary.
radhika [Thu, 25 Sep 2014 19:31:26 +0000 (15:31 -0400)]
3889: add fixture "pipeline_with_tagged_collection_input"
Peter Amstutz [Thu, 25 Sep 2014 19:24:52 +0000 (15:24 -0400)]
3988: Add note to Job.state. Replace logic to compute state based on
success/running columns with the same logic as used on apiserver.
Tim Pierce [Thu, 25 Sep 2014 19:09:25 +0000 (15:09 -0400)]
bug fix: args_retries => args.retries
No issue #
Peter Amstutz [Thu, 25 Sep 2014 19:01:44 +0000 (15:01 -0400)]
3899: Shorten count of ended/succeed/failed in a-r-p-i with some clever Ruby.
Improve reporting to test for state == Cancelled instead of looking at
cancelled_at, and distinguish between cancelled the state being unexpectedly
changed to success/failed. pipeline_instances_helper uses state attribute.
radhika [Thu, 25 Sep 2014 18:35:55 +0000 (14:35 -0400)]
Merge branch 'master' into 3836-remove-collection-from-project-bug
radhika [Thu, 25 Sep 2014 18:34:15 +0000 (14:34 -0400)]
3889: fix typo in test name
Tom Clegg [Thu, 25 Sep 2014 17:52:51 +0000 (13:52 -0400)]
3991: Use db:structure:load and db:seed instead of db:setup: the database already exists here.
Tom Clegg [Thu, 25 Sep 2014 18:30:09 +0000 (14:30 -0400)]
3991: Handle "no workbench_address configured" more gracefully.
* Remove example config from default production section.
* Follow config rule: false = feature disabled, nil = sysadmin error.
* Respond 404 at root url if no workbench_address is configured.
* Never redirect to workbench if client requested JSON.
Tom Clegg [Thu, 25 Sep 2014 18:16:33 +0000 (14:16 -0400)]
3991: Run passenger script using bundle exec.
Passenger was installed in a previous step, but that was done using
"bundle install", which installs into ./vendor/bundle instead of a
system-wide install dir. This way, we install the passenger version
listed in services/api/Gemfile.lock instead of installing some other
version (or failing completely).
Tom Clegg [Thu, 25 Sep 2014 18:11:17 +0000 (14:11 -0400)]
3991: Set workbench_address in docker config.
radhika [Thu, 25 Sep 2014 18:25:50 +0000 (14:25 -0400)]
Merge branch 'master' into 3889-functional-testing
radhika [Thu, 25 Sep 2014 18:23:25 +0000 (14:23 -0400)]
3889: Since all failing API server functional tests are fixed, update test_helper to fail any future tests that execute multiple acions in one single functional test.
radhika [Thu, 25 Sep 2014 18:21:46 +0000 (14:21 -0400)]
3889: update the test "use ownership and permission links to determine which logs a user can see" to account for the newly added log fixture.
radhika [Thu, 25 Sep 2014 18:17:19 +0000 (14:17 -0400)]
3889: split the test "get all pages of group-owned objects" into multiple tests that pull pages with offset of 5.
Tim Pierce [Thu, 25 Sep 2014 18:09:02 +0000 (14:09 -0400)]
3901: improve component rendering error reports
The "Components" tab on the /pipeline_instances page now includes the
error that was encountered, and a collapsed panel with the full backtrace.
Ward Vandewege [Thu, 25 Sep 2014 17:56:10 +0000 (13:56 -0400)]
In our docker jobs image: use our debian packages for the python sdk and
fuse driver.
No issue #
Ward Vandewege [Thu, 25 Sep 2014 17:54:46 +0000 (13:54 -0400)]
In our docker base image: do not rely on pgp.mit.edu, use
pool.sks-keyservers.net instead.
No issue #
radhika [Thu, 25 Sep 2014 17:34:55 +0000 (13:34 -0400)]
3889: add the job fixture "job_with_unnormalized_output_and_log"
radhika [Thu, 25 Sep 2014 17:30:56 +0000 (13:30 -0400)]
3889: split the test "normalize output and log uuids when creating job" into two tests:
1) that creates a job with unnormalized output and log and verifies that normalization happened and
2) that updates a job with unnormalized output and log (a fixture) with normalized output and log.
radhika [Thu, 25 Sep 2014 16:54:35 +0000 (12:54 -0400)]
3889: split the test "update a job without failing script_version check" into two tests instead of two action in one test.
radhika [Thu, 25 Sep 2014 16:32:55 +0000 (12:32 -0400)]
3889: split the test "cancel a running job" into two tests: one that cancels a running job and another that cancels an already cancelled job.
radhika [Thu, 25 Sep 2014 16:24:10 +0000 (12:24 -0400)]
3889: split test doing post and get requests into two different tests by using a fixture.
radhika [Thu, 25 Sep 2014 15:47:54 +0000 (11:47 -0400)]
3889: break the "add keep disk with no filesystem_uuid" test into two tests, instead of doing two post actions in the same test.
radhika [Thu, 25 Sep 2014 15:16:07 +0000 (11:16 -0400)]
3889: fix tests that were doing multiple actions in one test.