Merge branch 'master' into 14988-wb-rails5-upgrade
[arvados.git] / apps / workbench / app / controllers / pipeline_instances_controller.rb
index e1862b9b8420ae746f6659a41714ff97376c72a4..ab0e55b22a1a7c73aac99dcc5411641c7ada20a3 100644 (file)
@@ -1,7 +1,11 @@
+# Copyright (C) The Arvados Authors. All rights reserved.
+#
+# SPDX-License-Identifier: AGPL-3.0
+
 class PipelineInstancesController < ApplicationController
-  skip_before_filter :find_object_by_uuid, only: :compare
-  before_filter :find_objects_by_uuid, only: :compare
-  skip_around_filter :require_thread_api_token, if: proc { |ctrl|
+  skip_before_action :find_object_by_uuid, only: :compare
+  before_action :find_objects_by_uuid, only: :compare
+  skip_around_action :require_thread_api_token, if: proc { |ctrl|
     Rails.configuration.anonymous_user_token and
     'show' == ctrl.action_name
   }
@@ -188,7 +192,7 @@ class PipelineInstancesController < ApplicationController
     if provenance
       @prov_svg = ProvenanceHelper::create_provenance_graph provenance, "provenance_svg", {
         :request => request,
-        :direction => :bottom_up,
+        :direction => :top_down,
         :all_script_parameters => true,
         :combine_jobs => :script_and_version,
         :pips => pips,
@@ -341,6 +345,15 @@ class PipelineInstancesController < ApplicationController
     @unreadable_inputs_present
   end
 
+  def cancel
+    @object.cancel
+    if params[:return_to]
+      redirect_to params[:return_to]
+    else
+      redirect_to @object
+    end
+  end
+
   protected
   def for_comparison v
     if v.is_a? Hash or v.is_a? Array