diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-02-24 12:09:00 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-02-24 12:09:00 +0000 |
commit | ae78b85a25cb0c19c3d6a2e4e6c7ca91ed50787d (patch) | |
tree | c53ad0fcdab26725814f1dc5267f6a04ebe4cf73 /lib/api/internal | |
parent | 38149afcf95e7669a7a99828c579d185b70c04dc (diff) | |
download | gitlab-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.rb | 23 |
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 |