summaryrefslogtreecommitdiff
path: root/db/post_migrate
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2020-07-08 13:55:03 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2020-07-08 13:55:03 +0000
commitcd1cc23153ed8115bc565f62b5a9f4eddc0942ca (patch)
treeb379b2c66a70ffbb0d3baf71bdcc89eba8e434f2 /db/post_migrate
parent755aa9544e3f5595cdc4f7a9d746758670d2393b (diff)
downloadgitlab-ce-cd1cc23153ed8115bc565f62b5a9f4eddc0942ca.tar.gz
Add latest changes from gitlab-org/gitlab@13-1-stable-ee
Diffstat (limited to 'db/post_migrate')
-rw-r--r--db/post_migrate/20200526000407_seed_repository_storages_weighted.rb9
-rw-r--r--db/post_migrate/20200602143020_update_routes_for_lost_and_found_group_and_orphaned_projects.rb10
2 files changed, 18 insertions, 1 deletions
diff --git a/db/post_migrate/20200526000407_seed_repository_storages_weighted.rb b/db/post_migrate/20200526000407_seed_repository_storages_weighted.rb
index e5a0acb9cd8..979f16e75ed 100644
--- a/db/post_migrate/20200526000407_seed_repository_storages_weighted.rb
+++ b/db/post_migrate/20200526000407_seed_repository_storages_weighted.rb
@@ -1,16 +1,23 @@
# frozen_string_literal: true
class SeedRepositoryStoragesWeighted < ActiveRecord::Migration[6.0]
+ DOWNTIME = false
+
class ApplicationSetting < ActiveRecord::Base
serialize :repository_storages
self.table_name = 'application_settings'
end
def up
+ # We need to flush the cache to ensure the newly-added column is loaded
+ ApplicationSetting.reset_column_information
+
+ # There should only be one row here due to
+ # 20200420162730_remove_additional_application_settings_rows.rb
ApplicationSetting.all.each do |settings|
storages = Gitlab.config.repositories.storages.keys.collect do |storage|
weight = settings.repository_storages.include?(storage) ? 100 : 0
- [storage, weight]
+ [storage.to_sym, weight]
end
settings.repository_storages_weighted = Hash[storages]
diff --git a/db/post_migrate/20200602143020_update_routes_for_lost_and_found_group_and_orphaned_projects.rb b/db/post_migrate/20200602143020_update_routes_for_lost_and_found_group_and_orphaned_projects.rb
index 1935eaa1237..faa3c4161a0 100644
--- a/db/post_migrate/20200602143020_update_routes_for_lost_and_found_group_and_orphaned_projects.rb
+++ b/db/post_migrate/20200602143020_update_routes_for_lost_and_found_group_and_orphaned_projects.rb
@@ -136,6 +136,7 @@ class UpdateRoutesForLostAndFoundGroupAndOrphanedProjects < ActiveRecord::Migrat
# to ensure the Active Record's knowledge of the table structure is current
Namespace.reset_column_information
Route.reset_column_information
+ User.reset_column_information
# Find the ghost user, its namespace and the "lost and found" group
ghost_user = User.ghost
@@ -158,6 +159,15 @@ class UpdateRoutesForLostAndFoundGroupAndOrphanedProjects < ActiveRecord::Migrat
'More info: gitlab.com/gitlab-org/gitlab/-/issues/198603'
lost_and_found_group.save!
+ # make sure that the ghost namespace has a unique path
+ ghost_namespace.generate_unique_path
+
+ if ghost_namespace.path_changed?
+ ghost_namespace.save!
+ # If the path changed, also update the Ghost User's username to match the new path.
+ ghost_user.update!(username: ghost_namespace.path)
+ end
+
# Update the routes for the Ghost user, the "lost and found" group
# and all the orphaned projects
ghost_namespace.ensure_route!