Class: SystemCheck::Orphans::NamespaceCheck

Inherits:
BaseCheck
  • Object
show all
Defined in:
lib/system_check/orphans/namespace_check.rb

Instance Attribute Summary

Attributes inherited from BaseCheck

#skip_reason

Instance Method Summary collapse

Methods inherited from BaseCheck

#can_repair?, #can_skip?, #check?, check_fail, check_pass, display_name, #multi_check?, #repair!, set_check_fail, set_check_pass, set_name, set_skip_reason, #show_error, #skip?, skip_reason

Methods included from Helpers

#finished_checking, #fix_and_rerun, #for_more_information, #omnibus_gitlab?, #sanitized_message, #see_installation_guide_section, #should_sanitize?, #start_checking, #sudo_gitlab, #try_fixing_it

Methods included from Gitlab::TaskHelpers

#all_repos, #ask_to_continue, #checkout_or_clone_version, #checkout_version, #clone_repo, #get_version, #gid_for, #gitlab_user, #gitlab_user?, #invoke_and_time_task, #os_name, #prompt, #repository_storage_paths_args, #run_and_match, #run_command, #run_command!, #uid_for, #user_home, #warn_user_is_not_gitlab

Methods included from Gitlab::Utils::StrongMemoize

#clear_memoization, #strong_memoize, #strong_memoized?

Instance Method Details

#multi_checkObject


8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/system_check/orphans/namespace_check.rb', line 8

def multi_check
  Gitlab::GitalyClient::StorageSettings.allow_disk_access do
    Gitlab.config.repositories.storages.each do |storage_name, repository_storage|
      $stdout.puts
      $stdout.puts "* Storage: #{storage_name} (#{repository_storage.legacy_disk_path})".color(:yellow)
      toplevel_namespace_dirs = disk_namespaces(repository_storage.legacy_disk_path)

      orphans = (toplevel_namespace_dirs - existing_namespaces)
      print_orphans(orphans, storage_name)
    end
  end

  clear_namespaces! # releases memory when check finishes
end