summaryrefslogtreecommitdiff
path: root/lib/api/internal
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2020-02-24 12:09:00 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2020-02-24 12:09:00 +0000
commitae78b85a25cb0c19c3d6a2e4e6c7ca91ed50787d (patch)
treec53ad0fcdab26725814f1dc5267f6a04ebe4cf73 /lib/api/internal
parent38149afcf95e7669a7a99828c579d185b70c04dc (diff)
downloadgitlab-ce-ae78b85a25cb0c19c3d6a2e4e6c7ca91ed50787d.tar.gz
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'lib/api/internal')
-rw-r--r--lib/api/internal/pages.rb23
1 files changed, 18 insertions, 5 deletions
diff --git a/lib/api/internal/pages.rb b/lib/api/internal/pages.rb
index a2fe3e09df8..e2e1351c939 100644
--- a/lib/api/internal/pages.rb
+++ b/lib/api/internal/pages.rb
@@ -24,13 +24,26 @@ module API
requires :host, type: String, desc: 'The host to query for'
end
get "/" do
- host = Namespace.find_by_pages_host(params[:host]) || PagesDomain.find_by_domain(params[:host])
- no_content! unless host
+ serverless_domain_finder = ServerlessDomainFinder.new(params[:host])
+ if serverless_domain_finder.serverless?
+ # Handle Serverless domains
+ serverless_domain = serverless_domain_finder.execute
+ no_content! unless serverless_domain
- virtual_domain = host.pages_virtual_domain
- no_content! unless virtual_domain
+ virtual_domain = Serverless::VirtualDomain.new(serverless_domain)
+ no_content! unless virtual_domain
- present virtual_domain, with: Entities::Internal::Pages::VirtualDomain
+ present virtual_domain, with: Entities::Internal::Serverless::VirtualDomain
+ else
+ # Handle Pages domains
+ host = Namespace.find_by_pages_host(params[:host]) || PagesDomain.find_by_domain(params[:host])
+ no_content! unless host
+
+ virtual_domain = host.pages_virtual_domain
+ no_content! unless virtual_domain
+
+ present virtual_domain, with: Entities::Internal::Pages::VirtualDomain
+ end
end
end
end