summaryrefslogtreecommitdiff
path: root/app/services/ci/create_cluster_service.rb
blob: f7ee0e468e2d6f51c1559c73a1a5453ce404ae9b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
module Ci
  class CreateClusterService < BaseService
    def execute(access_token)
      params['gcp_machine_type'] ||= GoogleApi::CloudPlatform::Client::DEFAULT_MACHINE_TYPE

      cluster_params =
        params.merge(user: current_user,
                     gcp_token: access_token)

      project.create_cluster(cluster_params).tap do |cluster|
        ClusterProvisionWorker.perform_async(cluster.id) if cluster.persisted?
      end
    end
  end
end