Merge branch '11095-cwl-control-reuse' closes #11095
[arvados.git] / services / api / db / migrate / 20140325175653_remove_kind_columns.rb
index 115048d091312f22bf1c05098a08134162f5a4ad..eae2a2c87e40141ffac327e6c79c32950e48837b 100644 (file)
@@ -1,4 +1,6 @@
 class RemoveKindColumns < ActiveRecord::Migration
+  include CurrentApiClient
+
   def up
     remove_column :links, :head_kind
     remove_column :links, :tail_kind
@@ -9,5 +11,17 @@ class RemoveKindColumns < ActiveRecord::Migration
     add_column :links, :head_kind, :string
     add_column :links, :tail_kind, :string
     add_column :logs, :object_kind, :string
+
+    act_as_system_user do
+      Link.all.each do |l|
+        l.head_kind = ArvadosModel::resource_class_for_uuid(l.head_uuid).kind if l.head_uuid
+        l.tail_kind = ArvadosModel::resource_class_for_uuid(l.tail_uuid).kind if l.tail_uuid
+        l.save
+      end
+      Log.all.each do |l|
+        l.object_kind = ArvadosModel::resource_class_for_uuid(l.object_uuid).kind if l.object_uuid
+        l.save
+      end
+    end
   end
 end