Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app/services/clusters/applications/base_service.rb')
-rw-r--r--app/services/clusters/applications/base_service.rb96
1 files changed, 0 insertions, 96 deletions
diff --git a/app/services/clusters/applications/base_service.rb b/app/services/clusters/applications/base_service.rb
deleted file mode 100644
index c6f22cfa04c..00000000000
--- a/app/services/clusters/applications/base_service.rb
+++ /dev/null
@@ -1,96 +0,0 @@
-# frozen_string_literal: true
-
-module Clusters
- module Applications
- class BaseService
- InvalidApplicationError = Class.new(StandardError)
-
- attr_reader :cluster, :current_user, :params
-
- def initialize(cluster, user, params = {})
- @cluster = cluster
- @current_user = user
- @params = params.dup
- end
-
- def execute(request)
- instantiate_application.tap do |application|
- if application.has_attribute?(:hostname)
- application.hostname = params[:hostname]
- end
-
- if application.has_attribute?(:email)
- application.email = params[:email]
- end
-
- if application.has_attribute?(:stack)
- application.stack = params[:stack]
- end
-
- if application.respond_to?(:oauth_application)
- application.oauth_application = create_oauth_application(application, request)
- end
-
- if application.instance_of?(Knative)
- Serverless::AssociateDomainService
- .new(application, pages_domain_id: params[:pages_domain_id], creator: current_user)
- .execute
- end
-
- worker = worker_class(application)
-
- application.make_scheduled!
-
- worker.perform_async(application.name, application.id)
- end
- end
-
- protected
-
- def worker_class(application)
- raise NotImplementedError
- end
-
- def builder
- raise NotImplementedError
- end
-
- def project_builders
- raise NotImplementedError
- end
-
- def instantiate_application
- raise_invalid_application_error if unknown_application?
-
- builder || raise(InvalidApplicationError, "invalid application: #{application_name}")
- end
-
- def raise_invalid_application_error
- raise(InvalidApplicationError, "invalid application: #{application_name}")
- end
-
- def unknown_application?
- Clusters::Cluster::APPLICATIONS.keys.exclude?(application_name)
- end
-
- def application_name
- params[:application]
- end
-
- def application_class
- Clusters::Cluster::APPLICATIONS[application_name]
- end
-
- def create_oauth_application(application, request)
- oauth_application_params = {
- name: params[:application],
- redirect_uri: application.callback_url,
- scopes: application.oauth_scopes,
- owner: current_user
- }
-
- ::Applications::CreateService.new(current_user, oauth_application_params).execute(request)
- end
- end
- end
-end