Skip to content
Snippets Groups Projects
Unverified Commit a752c56c authored by Zeger-Jan van de Weg's avatar Zeger-Jan van de Weg
Browse files

Deprecate legacy disk paths

Direct disk access is impossible on environments where components run in
their own container. There for constructing the path should not be done
except for exceptional cases.

One of the considerations, instead of logging, was to use Sentry. For
now I've chosen not to use this as the impact of this change is hard to
determine. Getting this in now will allow us to checkout the impact on
dev.gitlab.org and staging.
parent b2f57a56
No related branches found
No related tags found
No related merge requests found
deprecator = ActiveSupport::Deprecation.new('11.0', 'GitLab')
if Gitlab.inc_controlled? || Rails.env.development?
ActiveSupport::Deprecation.deprecate_methods(Gitlab::GitalyClient::StorageSettings, :legacy_disk_path, deprecator: deprecator)
end
Loading
Loading
@@ -12,4 +12,12 @@ module Gitlab
def self.staging?
Gitlab.config.gitlab.url == 'https://staging.gitlab.com'
end
def self.dev?
Gitlab.config.gitlab.url == 'https://dev.gitlab.org'
end
def self.inc_controlled?
dev? || staging? || com?
end
end
Loading
Loading
@@ -75,9 +75,6 @@ module Gitlab
end
end
 
# Full path to repo
attr_reader :path
# Directory name of repo
attr_reader :name
 
Loading
Loading
@@ -96,14 +93,13 @@ module Gitlab
@relative_path = relative_path
@gl_repository = gl_repository
 
storage_path = Gitlab.config.repositories.storages[@storage].legacy_disk_path
@gitlab_projects = Gitlab::Git::GitlabProjects.new(
storage,
relative_path,
global_hooks_path: Gitlab.config.gitlab_shell.hooks_path,
logger: Rails.logger
)
@path = File.join(storage_path, @relative_path)
@name = @relative_path.split("/").last
end
 
Loading
Loading
@@ -111,6 +107,12 @@ module Gitlab
path == other.path
end
 
def path
@path ||= File.join(
Gitlab.config.repositories.storages[@storage].legacy_disk_path, @relative_path
)
end
# Default branch in the repository
def root_ref
@root_ref ||= gitaly_migrate(:root_ref) do |is_enabled|
Loading
Loading
@@ -139,12 +141,12 @@ module Gitlab
end
 
def exists?
Gitlab::GitalyClient.migrate(:repository_exists, status: Gitlab::GitalyClient::MigrationStatus::OPT_OUT) do |enabled|
Gitlab::GitalyClient.migrate(:repository_exists, status: Gitlab::GitalyClient::MigrationStatus::OPT_OUT) do |enabled|
if enabled
gitaly_repository_client.exists?
else
circuit_breaker.perform do
File.exist?(File.join(@path, 'refs'))
File.exist?(File.join(path, 'refs'))
end
end
end
Loading
Loading
@@ -1000,7 +1002,7 @@ module Gitlab
if is_enabled
gitaly_repository_client.info_attributes
else
attributes_path = File.join(File.expand_path(@path), 'info', 'attributes')
attributes_path = File.join(File.expand_path(path), 'info', 'attributes')
 
if File.exist?(attributes_path)
File.read(attributes_path)
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment