Merge branch '4156-no-gemfile-lock-for-gem' refs #4156
[arvados.git] / services / api / lib / current_api_client.rb
index 37039ee65444650c94470dd48e9b166bc67568b0..9f78587eabe9de75e37f49268d508d832203ad46 100644 (file)
@@ -98,6 +98,28 @@ module CurrentApiClient
     $system_group
   end
 
+  def all_users_group_uuid
+    [Server::Application.config.uuid_prefix,
+     Group.uuid_prefix,
+     'fffffffffffffff'].join('-')
+  end
+
+  def all_users_group
+    if not $all_users_group
+      act_as_system_user do
+        ActiveRecord::Base.transaction do
+          $all_users_group = Group.
+            where(uuid: all_users_group_uuid).first_or_create do |g|
+            g.update_attributes(name: "All users",
+                                description: "All users",
+                                group_class: "role")
+          end
+        end
+      end
+    end
+    $all_users_group
+  end
+
   def act_as_system_user
     if block_given?
       act_as_user system_user do
@@ -173,12 +195,8 @@ module CurrentApiClient
       act_as_system_user do
         ActiveRecord::Base.transaction do
           $empty_collection = Collection.
-            where(uuid: empty_collection_uuid).
-            first_or_create!(manifest_text: '')
-          Link.where(tail_uuid: anonymous_group.uuid,
-                     head_uuid: empty_collection_uuid,
-                     link_class: 'permission',
-                     name: 'can_read').first_or_create!
+            where(portable_data_hash: empty_collection_uuid).
+            first_or_create!(manifest_text: '', owner_uuid: anonymous_group.uuid)
         end
       end
     end