13561: Add missing copyright notices on migrations
[arvados.git] / services / api / db / migrate / 20140325175653_remove_kind_columns.rb
index 115048d091312f22bf1c05098a08134162f5a4ad..b4085ba92eb5c0af384abdfc04eff45086fb7340 100644 (file)
@@ -1,4 +1,10 @@
+# Copyright (C) The Arvados Authors. All rights reserved.
+#
+# SPDX-License-Identifier: AGPL-3.0
+
 class RemoveKindColumns < ActiveRecord::Migration
+  include CurrentApiClient
+
   def up
     remove_column :links, :head_kind
     remove_column :links, :tail_kind
@@ -9,5 +15,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