blob: be71018e8513e194e3e06adbd68ddb6b01971346 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
# frozen_string_literal: true
module Gitlab
module Pages
class Settings < ::SimpleDelegator
DiskAccessDenied = Class.new(StandardError)
def path
report_denied_disk_access
super
end
def local_store
@local_store ||= ::Gitlab::Pages::Stores::LocalStore.new(super)
end
private
def disk_access_denied?
return true unless ::Settings.pages.local_store&.enabled
::Gitlab::Runtime.web_server? && !::Gitlab::Runtime.test_suite?
end
def report_denied_disk_access
raise DiskAccessDenied if disk_access_denied?
rescue => e
::Gitlab::ErrorTracking.track_exception(e)
end
end
end
end
|