[ARVADOS] updated: 7df2da959b583d3646b9fde606f9e74d598d4bb9

git at public.curoverse.com git at public.curoverse.com
Thu Jun 5 11:18:37 EDT 2014


Summary of changes:
 .gitignore                                         |   3 +
 .../app/assets/javascripts/pipeline_instances.js   |  22 ++--
 .../app/assets/stylesheets/application.css.scss    |   3 +
 .../workbench/app/assets/stylesheets/jobs.css.scss |  13 ++-
 .../app/controllers/application_controller.rb      |   6 +-
 .../app/controllers/folders_controller.rb          |   2 +
 .../controllers/pipeline_instances_controller.rb   |   1 +
 apps/workbench/app/helpers/application_helper.rb   |   8 +-
 apps/workbench/app/models/authorized_key.rb        |   2 +-
 apps/workbench/app/models/collection.rb            |   2 +
 apps/workbench/app/models/pipeline_instance.rb     |   6 +-
 apps/workbench/app/models/user.rb                  |   2 +-
 apps/workbench/app/models/virtual_machine.rb       |   2 +-
 .../views/application/_show_object_button.html.erb |   7 +-
 .../app/views/application/_svg_div.html.erb        |   2 +-
 .../app/views/collections/_choose_rows.html.erb    |  26 +++--
 .../app/views/collections/_index_tbody.html.erb    |   4 +-
 .../app/views/collections/_show_recent.html.erb    |   4 +-
 .../app/views/folders/_show_contents_rows.html.erb |   6 +-
 .../pipeline_instances/_show_compare.html.erb      |   5 +-
 .../pipeline_instances/_show_components.html.erb   |   3 +-
 .../views/pipeline_instances/_show_inputs.html.erb |   3 +-
 .../app/views/pipeline_instances/compare.html.erb  |  14 +++
 .../test/integration/pipeline_instances_test.rb    |   4 +
 apps/workbench/test/integration/users_test.rb      |   8 +-
 doc/api/methods/users.html.textile.liquid          |   4 -
 ...rial-gatk-variantfiltration.html.textile.liquid |  42 +------
 doc/user/topics/tutorial-job1.html.textile.liquid  |  12 +-
 docker/api/secret_token.rb.in                      |   5 +
 docker/build_tools/Makefile                        |   3 +-
 docker/config.yml.example                          |   4 +
 docker/jobs/Dockerfile                             |   2 +
 sdk/cli/bin/arv                                    |   2 -
 sdk/cli/bin/crunch-job                             |  31 +++--
 sdk/python/arvados/commands/put.py                 |  20 ++--
 sdk/python/test_cmdline.py                         |  81 -------------
 .../tests/{test_arv-put.py => test_arv_put.py}     | 103 ++++++++++++++++-
 services/api/Gemfile                               |   1 -
 services/api/Gemfile.lock                          |   2 -
 .../controllers/arvados/v1/job_tasks_controller.rb |   1 +
 .../app/controllers/arvados/v1/jobs_controller.rb  |  45 --------
 .../arvados/v1/pipeline_instances_controller.rb    |   2 +-
 .../app/controllers/arvados/v1/users_controller.rb |  39 +------
 services/api/app/mailers/admin_notifier.rb         |  52 +++++----
 services/api/app/models/job.rb                     |  19 ----
 services/api/app/models/pipeline_instance.rb       |  71 ++----------
 services/api/app/models/user.rb                    |  10 +-
 .../admin_notifier/after_create_user.text.erb      |   7 --
 .../admin_notifier/new_inactive_user.text.erb      |  13 +++
 .../api/app/views/admin_notifier/new_user.text.erb |  16 +++
 .../app/views/pipeline_instances/index.html.erb    |   4 +-
 services/api/config/application.default.yml        |   2 +
 services/api/config/routes.rb                      |   2 -
 ...e_active_and_success_from_pipeline_instances.rb |  42 +++++++
 services/api/db/schema.rb                          |   8 +-
 .../test/integration/serialized_encoding_test.rb   |  62 ++++++----
 services/api/test/unit/pipeline_instance_test.rb   |  43 +------
 services/api/test/unit/user_test.rb                | 105 +++++++++++++----
 services/fuse/tests/test_mount.py                  |   7 +-
 services/keep/src/keep/keep.go                     |  53 +++------
 services/keep/src/keep/volume_unix.go              |  14 +--
 services/keep/tools/traffic_test.py                | 126 +++++++++++++++++++++
 62 files changed, 658 insertions(+), 555 deletions(-)
 delete mode 100644 sdk/python/test_cmdline.py
 rename sdk/python/tests/{test_arv-put.py => test_arv_put.py} (78%)
 delete mode 100644 services/api/app/views/admin_notifier/after_create_user.text.erb
 create mode 100644 services/api/app/views/admin_notifier/new_inactive_user.text.erb
 create mode 100644 services/api/app/views/admin_notifier/new_user.text.erb
 create mode 100644 services/api/db/migrate/20140602143352_remove_active_and_success_from_pipeline_instances.rb
 create mode 100755 services/keep/tools/traffic_test.py

       via  7df2da959b583d3646b9fde606f9e74d598d4bb9 (commit)
       via  80ab788943653194282c6a61cebc871f7944958f (commit)
       via  20ffc9676259b048a0cd08df8a54063e885b9f3e (commit)
       via  30d63b582ed093d235ae4a9efdeda5de1d4e2f24 (commit)
       via  06750c636edc78256a11aec392be21d63a0cceeb (commit)
       via  7ea7c6bc160097c24e2403d6f98f45a4369b4c7d (commit)
       via  e20bd70e4deaf55e7f162307a10118c66e2faac5 (commit)
       via  70dd308c6d20951745d9b8e849131d0b14e7386a (commit)
       via  3792301ffcc75954caa41d5cc90abed465fbaf86 (commit)
       via  7f1e9f495fd2e335af08d7be54fb71eee6324421 (commit)
       via  a4378cd48648a9ca315713535f651d1bbace322f (commit)
       via  a78b72118fba71b880194f04ed06007fdfb58743 (commit)
       via  918cf0b4e26b6149510bf72194be19b40121437d (commit)
       via  b01245c1c7bc78b32dbc124527660b0c36b31a58 (commit)
       via  436d545670d3637dcd96b429e538b995ee98a49b (commit)
       via  4a3301617ae09e6b28c7b6fd79923ccd60b6b5e9 (commit)
       via  25b1840819d60ed2cb6cb669921a6c3d9eba3f10 (commit)
       via  72b85b3144ca23e2c3337e38960dec9a0aec0ff8 (commit)
       via  811beeab989c5b8704ba78bcd365e7caf71bc615 (commit)
       via  5abef879fabdff46472e8f34def5d3b0cd332e99 (commit)
       via  ab2550bca241736c162a435d62fc3ccb4ac5dc8e (commit)
       via  a35f886c9a2ca73b55fcb21ca37bf1fa2a3a6fc2 (commit)
       via  debfa4b65640388800daf3ac90263454a6fe2f8d (commit)
       via  96e6e2890330e18af48d460e54077257bd82161e (commit)
       via  70d7acb63d1f66fdde384e4bc7bfe439fe8abc35 (commit)
       via  d9814c9f51b177b15345bf4429baa2ce3b986a57 (commit)
       via  656769b7b36b38c564f7da64b275d8831d7a442e (commit)
       via  abc22e2b430a57787adaf9b665cff1214b0d87fc (commit)
       via  0558601e48e0440887ae597a64c314676bb1e138 (commit)
       via  902ff4f1b2c139d7637abeabb610e7e0d0858c0c (commit)
       via  f6235f6bbe13b61b298d07bedb75ba645d69ed15 (commit)
       via  aa58b06d72a858fd63e091622a5bd8b3a9287e72 (commit)
       via  37301d86406cc4991c6f149f00a6a0846d1808af (commit)
       via  cce25fdb29b36ffa3348546da36cbd4d8bbfe4fc (commit)
       via  16263c93ec077d2d54b012b9916cc9a421888317 (commit)
       via  afd7a019bbeed1f194d6f4fbd2e190eae42ddb86 (commit)
       via  65be441066ac47f556b3a19872536b42b09c5e22 (commit)
       via  fd1e12105ef7efb5e2642c8e20f032f5b15cd974 (commit)
       via  3ed7de1ce58d88b95cd47dbb4c53811a8f13a91f (commit)
       via  c950192e08bcfc6e84432359a7128b73b52e8a58 (commit)
       via  8997d50ab1d335120af5965957c4cca9fb2a3b16 (commit)
       via  263c5c8d78109908fda64b6b327904f1d93e5c52 (commit)
       via  6029fb64fd6372c577f9f143e6f3dcaded127ac3 (commit)
       via  c88315d6435332f5dababac62ff4d72dadde7c67 (commit)
       via  e1ae50d3e62499eaa0938f27cea3e4ff8ba116a3 (commit)
       via  95709eedf2452d3ceddeeb02d24b823a552300cf (commit)
       via  a6c0e01403377311a12f6d9ae587d92dbc00e1fd (commit)
       via  22e76f53dad163dd1d6703d792d94527d70bb334 (commit)
       via  ae2ecdfac7e8fcab495bfa8f6daa812a70123668 (commit)
       via  b402e6a66e569167c0e990a4fdfc2843df76afd8 (commit)
       via  070e2e8e80cfc88414dd2595cae5bfddce1cd94f (commit)
       via  4609a76d9b84e0f63233cdf6dcbef376b1686b69 (commit)
       via  0c1c7fa2cba96aae542db0e6b6991c71d5ff578a (commit)
       via  ff3686b372cd598ee990acd990af2b04daf91ada (commit)
       via  3e3389504c6841e160ac086328693001261e016d (commit)
       via  b2da714edbcb2fc203d2cbc83a940ab776be73d0 (commit)
       via  20c594c3c683a492132c0fc105241689ee116c10 (commit)
       via  80f24dbef6515f100a5358c3e94fddd4ff7d97c7 (commit)
       via  e9fc734bb270a5648c923ed0419ff745e283419c (commit)
       via  e1868aea69f51b3fb3d281a0dcca66b9de239cfa (commit)
       via  c811cb98bce53f775a865a04ea0f01635dbe75f3 (commit)
       via  9706665da1dd8f3ccb8129933f02f4b7e21bc878 (commit)
       via  e2a7fe50d3b6e98b7f549c78c4f91dbe4066ddbb (commit)
       via  ebb166d65eb37f89edeccfc5be97014f3f2a73e2 (commit)
       via  c4175f65bdd100d38bd0e1d212f72c733299ed36 (commit)
       via  844b65fa97d14fddd7f7b702328a31476932fe10 (commit)
       via  1eee45ce0bbae9e7d04a9382469d2c48fb0cfd3e (commit)
       via  89851a28f3bd8dc05bb8efcab86fa42dda7e7fd2 (commit)
       via  6e0751ce5ea7332fc87e7836c24b6ccb49c399dc (commit)
       via  40cbd508756d5ec3935489fc67f5ada7423dc17f (commit)
       via  83a8512fad199107ff54762658a55176d479a5bb (commit)
      from  29487f418ff010e6ed536bc0a4d52997c1d0cd4f (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.


commit 7df2da959b583d3646b9fde606f9e74d598d4bb9
Merge: 80ab788 20ffc96
Author: Tom Clegg <tom at curoverse.com>
Date:   Thu Jun 5 11:17:59 2014 -0400

    2872: Merge branch 'master' into 2872-folder-nav
    
    Conflicts:
    	apps/workbench/app/controllers/application_controller.rb
    	apps/workbench/app/helpers/application_helper.rb
    	apps/workbench/app/models/authorized_key.rb
    	apps/workbench/app/models/job.rb
    	apps/workbench/app/models/pipeline_instance.rb
    	apps/workbench/app/models/user.rb
    	apps/workbench/app/models/virtual_machine.rb

diff --cc apps/workbench/app/assets/stylesheets/application.css.scss
index 75080a0,64c5098..8f377be
--- a/apps/workbench/app/assets/stylesheets/application.css.scss
+++ b/apps/workbench/app/assets/stylesheets/application.css.scss
@@@ -175,23 -171,26 +175,26 @@@ table.table-fixed-header-row tbody 
      z-index:1055;
  }
  
 -.navbar-nav.side-nav {
 -    box-shadow: inset -1px 0 #e7e7e7;
 +/* Do not leave space for left-nav */
 +div#wrapper {
 +  padding-left: 0;
  }
 -.navbar-nav.side-nav > li:first-child {
 -    margin-top: 5px; /* keep "hover" bg below top nav bottom border */
 +
 +.arv-description-as-subtitle {
 +  padding-bottom: 1em;
  }
 -.navbar-nav.side-nav > li > a {
 -    padding-top: 10px;
 -    padding-bottom: 10px;
 +.arv-description-in-table {
 +  max-height: 3.5em;
 +  overflow-x: hidden;
 +  overflow-y: hidden;
  }
 -.navbar-nav.side-nav > li.dropdown > ul.dropdown-menu > li > a {
 -    padding-top: 5px;
 -    padding-bottom: 5px;
 +.arv-description-in-table:hover {
 +  overflow-y: scroll;
  }
 -.navbar-nav.side-nav a.active,
 -.navbar-nav.side-nav a:hover,
 -.navbar-nav.side-nav a:focus {
 -    border-right: 1px solid #ffffff;
 -    background: #ffffff;
 +
 +.btn.btn-nodecorate {
 +  border: none;
  }
+ svg text {
+     font-size: 6pt;
 -}
++}

commit 80ab788943653194282c6a61cebc871f7944958f
Author: Tom Clegg <tom at curoverse.com>
Date:   Thu Jun 5 11:15:02 2014 -0400

    2872: Make Show button say Show again. Fix links on collections index.

diff --git a/apps/workbench/app/views/application/_show_object_button.html.erb b/apps/workbench/app/views/application/_show_object_button.html.erb
index 4f6eb7e..762ff7c 100644
--- a/apps/workbench/app/views/application/_show_object_button.html.erb
+++ b/apps/workbench/app/views/application/_show_object_button.html.erb
@@ -1,13 +1,13 @@
 <% htmloptions = {class: ''}.merge(htmloptions || {})
    htmloptions[:class] += " btn-#{size}" rescue nil %>
 <%= link_to_if_arvados_object object, {
-      link_text: raw('<i class="fa fa-fw ' + fa_icon_class_for_object(object) + '"></i>'),
+      link_text: raw('<i class="fa fa-fw ' + fa_icon_class_for_object(object) + '"></i> Show'),
       name_link: (defined?(name_link) && name_link && name_link.uuid) ? name_link : nil
     }, {
       data: {
         toggle: 'tooltip',
         placement: 'top'
       },
-      title: 'show',
-      class: 'btn btn-default btn-nodecorate ' + htmloptions[:class],
+      title: 'show ' + object.class_for_display.downcase,
+      class: 'btn btn-default ' + htmloptions[:class],
     } %>
diff --git a/apps/workbench/app/views/collections/_index_tbody.html.erb b/apps/workbench/app/views/collections/_index_tbody.html.erb
index 207ae13..deba78e 100644
--- a/apps/workbench/app/views/collections/_index_tbody.html.erb
+++ b/apps/workbench/app/views/collections/_index_tbody.html.erb
@@ -7,9 +7,11 @@
       <% friendly_name += raw(" <span class='label label-info'>#{tag_link.name}</span>") %>
     <% end %>
     <%= render :partial => "selection_checkbox", :locals => {:object => c, :friendly_name => friendly_name} %>
+
+    <%= render :partial => "show_object_button", :locals => {object: c, size: 'xs'} %>
   </td>
   <td>
-    <%= link_to_if_arvados_object c.uuid, {:no_tags => true } %>
+    <%= c.uuid %>
   </td>
   <td>
     <% i = 0 %>
diff --git a/apps/workbench/app/views/collections/_show_recent.html.erb b/apps/workbench/app/views/collections/_show_recent.html.erb
index 2f4ab64..80640ad 100644
--- a/apps/workbench/app/views/collections/_show_recent.html.erb
+++ b/apps/workbench/app/views/collections/_show_recent.html.erb
@@ -21,10 +21,10 @@
 
 <table id="collections-index" class="topalign table table-condensed table-fixedlayout"> <!-- table-fixed-header-row -->
   <colgroup>
-    <col width="4%" />
+    <col width="8%" />
     <col width="10%" />
     <col width="34%" />
-    <col width="15%" />
+    <col width="11%" />
     <col width="12%" />
     <col width="29%" />
   </colgroup>
diff --git a/apps/workbench/test/integration/users_test.rb b/apps/workbench/test/integration/users_test.rb
index b7bb49a..f5f66ec 100644
--- a/apps/workbench/test/integration/users_test.rb
+++ b/apps/workbench/test/integration/users_test.rb
@@ -25,7 +25,7 @@ class UsersTest < ActionDispatch::IntegrationTest
     end
 
     find('tr', text: 'zzzzz-tpzed-xurymjxw79nv3jz').
-      find('a[data-original-title=show]').
+      find('a', text: 'Show').
       click
     assert page.has_text? 'Attributes'
     assert page.has_text? 'Metadata'
@@ -80,7 +80,7 @@ class UsersTest < ActionDispatch::IntegrationTest
 
     # go to the new user's page
     find('tr', text: new_user_uuid).
-      find('a[data-original-title=show]').
+      find('a', text: 'Show').
       click
 
     assert page.has_text? 'modified_by_user_uuid'
@@ -107,7 +107,7 @@ class UsersTest < ActionDispatch::IntegrationTest
 
     # click on active user
     find('tr', text: 'zzzzz-tpzed-xurymjxw79nv3jz').
-      find('a[data-original-title=show]').
+      find('a', text: 'Show').
       click
 
     # Setup user
@@ -167,7 +167,7 @@ class UsersTest < ActionDispatch::IntegrationTest
 
     # click on active user
     find('tr', text: 'zzzzz-tpzed-xurymjxw79nv3jz').
-      find('a[data-original-title=show]').
+      find('a', text: 'Show').
       click
 
     # Verify that is_active is set

commit 3792301ffcc75954caa41d5cc90abed465fbaf86
Author: Tom Clegg <tom at curoverse.com>
Date:   Tue Jun 3 16:21:32 2014 -0400

    2872: Fix breadcrumbs on pipeline instance compare page.

diff --git a/apps/workbench/app/controllers/pipeline_instances_controller.rb b/apps/workbench/app/controllers/pipeline_instances_controller.rb
index 4275410..076f4aa 100644
--- a/apps/workbench/app/controllers/pipeline_instances_controller.rb
+++ b/apps/workbench/app/controllers/pipeline_instances_controller.rb
@@ -175,6 +175,7 @@ class PipelineInstancesController < ApplicationController
       :combine_jobs => :script_and_version,
       :script_version_nodes => true,
       :pips => pips }
+    @object = @objects.first
   end
 
   def show_pane_list
diff --git a/apps/workbench/app/views/pipeline_instances/_show_compare.html.erb b/apps/workbench/app/views/pipeline_instances/_show_compare.html.erb
index 53cd6b3..018384b 100644
--- a/apps/workbench/app/views/pipeline_instances/_show_compare.html.erb
+++ b/apps/workbench/app/views/pipeline_instances/_show_compare.html.erb
@@ -20,9 +20,10 @@
   </div>
   <% @objects.each do |object| %>
   <div class="col-sm-<%= pi_span %>" style="overflow-x: hidden; text-overflow: ellipsis;">
-    <%= link_to_if_arvados_object object, friendly_name: true %>
+    <%= render :partial => "show_object_button", :locals => {object: object, size: 'sm' } %>
+    <%= object.name || "unnamed #{object.class_for_display.downcase}" %>
     <br />
-    Template: <%= link_to_if_arvados_object object.pipeline_template_uuid, friendly_name: true %>
+    <span class="deemphasize">Template:</span> <%= link_to_if_arvados_object object.pipeline_template_uuid, friendly_name: true %>
   </div>
   <% end %>
   </div>
diff --git a/apps/workbench/app/views/pipeline_instances/compare.html.erb b/apps/workbench/app/views/pipeline_instances/compare.html.erb
index 9e8d1e5..953c098 100644
--- a/apps/workbench/app/views/pipeline_instances/compare.html.erb
+++ b/apps/workbench/app/views/pipeline_instances/compare.html.erb
@@ -1 +1,15 @@
+<% if (o = Group.find?(@objects.first.owner_uuid)) %>
+  <% content_for :breadcrumbs do %>
+    <li class="nav-separator"><span class="glyphicon glyphicon-arrow-right"></span></li>
+    <li>
+      <%= link_to(o.name, folder_path(o.uuid)) %>
+    </li>
+    <li class="nav-separator">
+      <span class="glyphicon glyphicon-arrow-right"></span>
+    </li>
+    <li>
+      <%= link_to '#' do %>compare pipelines<% end %>
+    </li>
+  <% end %>
+<% end %>
 <%= render partial: 'content', layout: 'content_layout', locals: {pane_list: controller.compare_pane_list }  %>

commit 7f1e9f495fd2e335af08d7be54fb71eee6324421
Author: Tom Clegg <tom at curoverse.com>
Date:   Tue Jun 3 16:08:49 2014 -0400

    2872: Fix links to collections from folder view.

diff --git a/apps/workbench/app/helpers/application_helper.rb b/apps/workbench/app/helpers/application_helper.rb
index 2d7995e..e23376b 100644
--- a/apps/workbench/app/helpers/application_helper.rb
+++ b/apps/workbench/app/helpers/application_helper.rb
@@ -124,7 +124,7 @@ module ApplicationHelper
       if opts[:no_link]
         raw(link_name)
       else
-        link_to raw(link_name), { controller: resource_class.to_s.tableize, action: 'show', id: link_uuid }, style_opts
+        link_to raw(link_name), { controller: resource_class.to_s.tableize, action: 'show', id: ((opts[:name_link].andand.uuid) || link_uuid) }, style_opts
       end
     else
       # just return attrvalue if it is not recognizable as an Arvados object or uuid.
diff --git a/apps/workbench/app/views/application/_show_object_button.html.erb b/apps/workbench/app/views/application/_show_object_button.html.erb
index 17e9737..4f6eb7e 100644
--- a/apps/workbench/app/views/application/_show_object_button.html.erb
+++ b/apps/workbench/app/views/application/_show_object_button.html.erb
@@ -1,12 +1,13 @@
 <% htmloptions = {class: ''}.merge(htmloptions || {})
    htmloptions[:class] += " btn-#{size}" rescue nil %>
 <%= link_to_if_arvados_object object, {
-      link_text: raw('<i class="fa fa-fw ' + fa_icon_class_for_object(object) + '"></i>')
+      link_text: raw('<i class="fa fa-fw ' + fa_icon_class_for_object(object) + '"></i>'),
+      name_link: (defined?(name_link) && name_link && name_link.uuid) ? name_link : nil
     }, {
       data: {
         toggle: 'tooltip',
         placement: 'top'
       },
       title: 'show',
-      class: 'btn btn-default btn-nodecorate ' + htmloptions[:class]
+      class: 'btn btn-default btn-nodecorate ' + htmloptions[:class],
     } %>
diff --git a/apps/workbench/app/views/folders/_show_contents_rows.html.erb b/apps/workbench/app/views/folders/_show_contents_rows.html.erb
index 68fe048..3c64b53 100644
--- a/apps/workbench/app/views/folders/_show_contents_rows.html.erb
+++ b/apps/workbench/app/views/folders/_show_contents_rows.html.erb
@@ -15,7 +15,7 @@
         <i class="fa fa-fw"></i><%# placeholder %>
       <% end %>
 
-      <%= render :partial => "show_object_button", :locals => {object: object, size: 'sm'} %>
+      <%= render :partial => "show_object_button", :locals => {object: object, size: 'sm', name_link: name_link} %>
 
       <%= render_editable_attribute (name_link || object), 'name', nil, {btnplacement: :left, tiptitle: 'rename'} %>
     </td>

commit a78b72118fba71b880194f04ed06007fdfb58743
Author: Tom Clegg <tom at curoverse.com>
Date:   Tue Jun 3 15:13:32 2014 -0400

    2872: Do not try to add name links for objects that have their own names

diff --git a/apps/workbench/app/controllers/folders_controller.rb b/apps/workbench/app/controllers/folders_controller.rb
index 000cbc9..ab7dcec 100644
--- a/apps/workbench/app/controllers/folders_controller.rb
+++ b/apps/workbench/app/controllers/folders_controller.rb
@@ -102,6 +102,8 @@ class FoldersController < ApplicationController
         name_links.each do |name_link|
           @objects_and_names << [object, name_link]
         end
+      elsif object.respond_to? :name
+        @objects_and_names << [object, object]
       else
         @objects_and_names << [object,
                                Link.new(owner_uuid: @object.uuid,

commit 918cf0b4e26b6149510bf72194be19b40121437d
Author: Tom Clegg <tom at curoverse.com>
Date:   Tue Jun 3 15:12:50 2014 -0400

    2872: Fix syntax

diff --git a/apps/workbench/app/views/pipeline_instances/_show_inputs.html.erb b/apps/workbench/app/views/pipeline_instances/_show_inputs.html.erb
index 016cd1a..354ebd2 100644
--- a/apps/workbench/app/views/pipeline_instances/_show_inputs.html.erb
+++ b/apps/workbench/app/views/pipeline_instances/_show_inputs.html.erb
@@ -8,8 +8,8 @@
       <% component[:script_parameters].andand.each do |pname, pvalue_spec| %>
         <% if pvalue_spec.is_a? Hash %>
           <% if (pvalue_spec[:description] or
-                 ((pvalue_spec[:required] or pvalue_spec[:optional] == false)
-                  and not pvalue_spec[:value])) %>
+                 ((pvalue_spec[:required] or pvalue_spec[:optional] == false) and
+                  not pvalue_spec[:value])) %>
             <% n_inputs += 1 %>
             <label for="<% "#{cname}-#{pname}" %>">
               <%= pvalue_spec[:title] ||

commit 4a3301617ae09e6b28c7b6fd79923ccd60b6b5e9
Author: Tom Clegg <tom at curoverse.com>
Date:   Tue Jun 3 14:43:48 2014 -0400

    2872: Fix up log message display on pipeline instance page.

diff --git a/apps/workbench/app/assets/javascripts/pipeline_instances.js b/apps/workbench/app/assets/javascripts/pipeline_instances.js
index 614f45f..4b17b4e 100644
--- a/apps/workbench/app/assets/javascripts/pipeline_instances.js
+++ b/apps/workbench/app/assets/javascripts/pipeline_instances.js
@@ -57,20 +57,26 @@ $(document).on('ajax:complete ready', function() {
 });
 
 $(document).on('arv-log-event', '.arv-log-event-handler-append-logs', function(event, eventData){
-  parsedData = JSON.parse(eventData);
+    var wasatbottom = ($(this).scrollTop() + $(this).height() >=
+                       this.scrollHeight);
+    var parsedData = JSON.parse(eventData);
+    var propertyText = undefined;
+    var properties = parsedData.properties;
 
-  propertyText = undefined
-
-  properties = parsedData.properties;
     if (properties !== null) {
-      propertyText = properties.text;
+        propertyText = properties.text;
     }
-
     if (propertyText !== undefined) {
-      $(this).append(propertyText + "<br/>");
+        $(this).append(propertyText + "<br/>");
     } else {
-      $(this).append(parsedData.summary + "<br/>");
+        $(this).append(parsedData.summary + "<br/>");
     }
+    if (wasatbottom)
+        this.scrollTop = this.scrollHeight;
+}).on('ready ajax:complete', function(){
+    $('.arv-log-event-handler-append-logs').each(function() {
+        this.scrollTop = this.scrollHeight;
+    });
 });
 
 var showhide_compare = function() {
diff --git a/apps/workbench/app/assets/stylesheets/jobs.css.scss b/apps/workbench/app/assets/stylesheets/jobs.css.scss
index e485745..14f8699 100644
--- a/apps/workbench/app/assets/stylesheets/jobs.css.scss
+++ b/apps/workbench/app/assets/stylesheets/jobs.css.scss
@@ -1,3 +1,10 @@
-// Place all the styles related to the Jobs controller here.
-// They will automatically be included in application.css.
-// You can use Sass (SCSS) here: http://sass-lang.com/
+.arv-job-log-window {
+    height: 20em;
+    white-space: nowrap;
+    overflow: scroll;
+    background: black;
+    color: white;
+    font-family: monospace;
+    font-size: .8em;
+    border: 2px solid black;
+}
diff --git a/apps/workbench/app/views/pipeline_instances/_show_components.html.erb b/apps/workbench/app/views/pipeline_instances/_show_components.html.erb
index efd36d2..d0fcbc9 100644
--- a/apps/workbench/app/views/pipeline_instances/_show_components.html.erb
+++ b/apps/workbench/app/views/pipeline_instances/_show_components.html.erb
@@ -121,12 +121,11 @@
     <% if !pipeline_job_uuids.empty? %>
       <h4>Log messages from running jobs</h4>
       <% log_history = pipeline_log_history(pipeline_job_uuids) %>
-      <div id="pipeline_event_log_history_div">
+      <div class="arv-log-event-listener arv-log-event-handler-append-logs arv-job-log-window" id="pipeline_event_log_div" data-object-uuids="<%=pipeline_job_uuids.join(" ")%>">
         <% log_history.each do |entry| %>
           <%=entry%><br/>
         <% end %>
       </div>
-      <div class="arv-log-event-listener arv-log-event-handler-append-logs" id="pipeline_event_log_div" data-object-uuids="<%=pipeline_job_uuids.join(" ")%>"/>
     <% end %>
 
   <% end %>

commit 25b1840819d60ed2cb6cb669921a6c3d9eba3f10
Author: Tom Clegg <tom at curoverse.com>
Date:   Tue Jun 3 14:40:19 2014 -0400

    2872: Check "optional" flag too when looking for required inputs.

diff --git a/apps/workbench/app/views/pipeline_instances/_show_inputs.html.erb b/apps/workbench/app/views/pipeline_instances/_show_inputs.html.erb
index 5a86728..016cd1a 100644
--- a/apps/workbench/app/views/pipeline_instances/_show_inputs.html.erb
+++ b/apps/workbench/app/views/pipeline_instances/_show_inputs.html.erb
@@ -8,7 +8,8 @@
       <% component[:script_parameters].andand.each do |pname, pvalue_spec| %>
         <% if pvalue_spec.is_a? Hash %>
           <% if (pvalue_spec[:description] or
-                 (pvalue_spec[:required] and not pvalue_spec[:value])) %>
+                 ((pvalue_spec[:required] or pvalue_spec[:optional] == false)
+                  and not pvalue_spec[:value])) %>
             <% n_inputs += 1 %>
             <label for="<% "#{cname}-#{pname}" %>">
               <%= pvalue_spec[:title] ||

commit 72b85b3144ca23e2c3337e38960dec9a0aec0ff8
Author: Tom Clegg <tom at curoverse.com>
Date:   Tue Jun 3 13:18:41 2014 -0400

    2872: Fix empty name placeholders.

diff --git a/apps/workbench/app/helpers/application_helper.rb b/apps/workbench/app/helpers/application_helper.rb
index 9921775..2d7995e 100644
--- a/apps/workbench/app/helpers/application_helper.rb
+++ b/apps/workbench/app/helpers/application_helper.rb
@@ -137,7 +137,9 @@ module ApplicationHelper
     if !object.attribute_editable?(attr, :ever) or
         (!object.editable? and
          !object.owner_uuid.in?(my_folders.collect(&:uuid)))
-      return attrvalue 
+      return ((attrvalue && attrvalue.length > 0 && attrvalue) ||
+              (attr == 'name' and object.andand.default_name) ||
+              '(none)')
     end
 
     input_type = 'text'
diff --git a/apps/workbench/app/views/folders/_show_contents_rows.html.erb b/apps/workbench/app/views/folders/_show_contents_rows.html.erb
index 8ecf8d3..68fe048 100644
--- a/apps/workbench/app/views/folders/_show_contents_rows.html.erb
+++ b/apps/workbench/app/views/folders/_show_contents_rows.html.erb
@@ -17,7 +17,7 @@
 
       <%= render :partial => "show_object_button", :locals => {object: object, size: 'sm'} %>
 
-      <%= render_editable_attribute name_object, 'name', nil, {btnplacement: :left, tiptitle: 'rename'} %>
+      <%= render_editable_attribute (name_link || object), 'name', nil, {btnplacement: :left, tiptitle: 'rename'} %>
     </td>
     <td class="arv-description-in-table">
       <%= render_controller_partial(

commit 811beeab989c5b8704ba78bcd365e7caf71bc615
Author: Tom Clegg <tom at curoverse.com>
Date:   Tue Jun 3 11:14:39 2014 -0400

    2872: Fix crash on missing object.

diff --git a/apps/workbench/app/views/collections/_choose_rows.html.erb b/apps/workbench/app/views/collections/_choose_rows.html.erb
index d488743..650a8c8 100644
--- a/apps/workbench/app/views/collections/_choose_rows.html.erb
+++ b/apps/workbench/app/views/collections/_choose_rows.html.erb
@@ -1,15 +1,17 @@
 <% @name_links.each do |name_link| %>
-  <div class="row filterable selectable <%= 'multiple' if multiple %>" data-object-uuid="<%= name_link.uuid %>">
-    <div class="col-sm-12" style="overflow-x:hidden">
-      <i class="fa fa-fw fa-archive"></i>
-      <%= name_link.name %>
+  <% if (object = get_object(name_link.head_uuid)) %>
+    <div class="row filterable selectable <%= 'multiple' if multiple %>" data-object-uuid="<%= name_link.uuid %>">
+      <div class="col-sm-12" style="overflow-x:hidden">
+        <i class="fa fa-fw fa-archive"></i>
+        <%= name_link.name %>
+      </div>
+      <div class="col-sm-11 col-sm-push-1" style="overflow-x: hidden">
+        <%= render_controller_partial(
+            'show_object_description_cell.html',
+            controller_name: 'collections',
+            locals: {object: object})
+            %>
+      </div>
     </div>
-    <div class="col-sm-11 col-sm-push-1" style="overflow-x: hidden">
-      <%= render_controller_partial(
-          'show_object_description_cell.html',
-          controller_name: 'collections',
-          locals: {object: get_object(name_link.head_uuid)})
-          %>
-    </div>
-  </div>
+  <% end %>
 <% end %>

commit 5abef879fabdff46472e8f34def5d3b0cd332e99
Author: Tom Clegg <tom at curoverse.com>
Date:   Tue Jun 3 11:09:11 2014 -0400

    2872: Fix total_bytes returning nil.

diff --git a/apps/workbench/app/models/collection.rb b/apps/workbench/app/models/collection.rb
index 4f4a790..2825618 100644
--- a/apps/workbench/app/models/collection.rb
+++ b/apps/workbench/app/models/collection.rb
@@ -21,6 +21,8 @@ class Collection < ArvadosBase
         tot += file[2]
       end
       tot
+    else
+      0
     end
   end
 

commit a35f886c9a2ca73b55fcb21ca37bf1fa2a3a6fc2
Author: Tom Clegg <tom at curoverse.com>
Date:   Tue Jun 3 10:18:54 2014 -0400

    2872: Treat HEAD same as GET in case we are behind a proxy.

diff --git a/apps/workbench/app/controllers/application_controller.rb b/apps/workbench/app/controllers/application_controller.rb
index 1fcfc3a..a5034fd 100644
--- a/apps/workbench/app/controllers/application_controller.rb
+++ b/apps/workbench/app/controllers/application_controller.rb
@@ -118,7 +118,7 @@ class ApplicationController < ActionController::Base
     respond_to do |f|
       f.json { render json: @object.attributes.merge(href: url_for(@object)) }
       f.html {
-        if request.method == 'GET'
+        if request.method.in? ['GET', 'HEAD']
           render
         else
           redirect_to params[:return_to] || @object
@@ -255,7 +255,7 @@ class ApplicationController < ActionController::Base
   def redirect_to_login
     respond_to do |f|
       f.html {
-        if request.method == 'GET'
+        if request.method.in? ['GET', 'HEAD']
           redirect_to arvados_api_client.arvados_login_url(return_to: request.url)
         else
           flash[:error] = "Either you are not logged in, or your session has timed out. I can't automatically log you in and re-attempt this request."
@@ -325,7 +325,7 @@ class ApplicationController < ActionController::Base
         # call to verify its authenticity.
         if verify_api_token
           session[:arvados_api_token] = params[:api_token]
-          if !request.format.json? and request.method == 'GET'
+          if !request.format.json? and request.method.in? ['GET', 'HEAD']
             # Repeat this request with api_token in the (new) session
             # cookie instead of the query string.  This prevents API
             # tokens from appearing in (and being inadvisedly copied

commit 70d7acb63d1f66fdde384e4bc7bfe439fe8abc35
Author: Tom Clegg <tom at curoverse.com>
Date:   Tue Jun 3 05:01:20 2014 -0400

    2872: Filter by tail instead of owner in case api server rule is not in yet.

diff --git a/apps/workbench/app/helpers/application_helper.rb b/apps/workbench/app/helpers/application_helper.rb
index 5eed7f8..9921775 100644
--- a/apps/workbench/app/helpers/application_helper.rb
+++ b/apps/workbench/app/helpers/application_helper.rb
@@ -254,7 +254,7 @@ module ApplicationHelper
       end
       modal_path = choose_collections_path \
       ({ title: 'Choose a dataset:',
-         filters: [['owner_uuid', '=', object.owner_uuid]].to_json,
+         filters: [['tail_uuid', '=', object.owner_uuid]].to_json,
          action_name: 'OK',
          action_href: pipeline_instance_path(id: object.uuid),
          action_method: 'patch',

commit d9814c9f51b177b15345bf4429baa2ce3b986a57
Author: Tom Clegg <tom at curoverse.com>
Date:   Tue Jun 3 04:51:28 2014 -0400

    2872: Ensure friendly_name is always a string.

diff --git a/apps/workbench/app/views/folders/_show_contents_rows.html.erb b/apps/workbench/app/views/folders/_show_contents_rows.html.erb
index 1cdd48f..8ecf8d3 100644
--- a/apps/workbench/app/views/folders/_show_contents_rows.html.erb
+++ b/apps/workbench/app/views/folders/_show_contents_rows.html.erb
@@ -5,7 +5,7 @@
       data-kind="<%= object.kind %>"
       >
     <td>
-      <%= render partial: 'selection_checkbox', locals: {object: object, friendly_name: (name_object.name rescue nil)} %>
+      <%= render partial: 'selection_checkbox', locals: {object: object, friendly_name: ((name_object.name rescue '') || '')} %>
 
       <% if folder.editable? %>
         <%= link_to({action: 'remove_item', id: folder.uuid, item_uuid: ((name_link && name_link.uuid) || object.uuid)}, method: :delete, remote: true, data: {confirm: "Remove #{object.class_for_display.downcase} #{name_object.name rescue object.uuid} from this folder?", toggle: 'tooltip', placement: 'top'}, class: 'btn btn-sm btn-default btn-nodecorate', title: 'remove') do %>

-----------------------------------------------------------------------


hooks/post-receive
-- 




More information about the arvados-commits mailing list