diff --git a/devops-client/lib/devops-client/output/stack.rb b/devops-client/lib/devops-client/output/stack.rb index 2051fae..e3ad175 100644 --- a/devops-client/lib/devops-client/output/stack.rb +++ b/devops-client/lib/devops-client/output/stack.rb @@ -49,6 +49,7 @@ module Output def create_servers_list headers = ['Logical id', 'Physical id'] + byebug rows = @data.map do |resource| [resource['resource_name'], resource['physical_resource_id']] end diff --git a/devops-service/app/api2/handlers/stack_preset.rb b/devops-service/app/api2/handlers/stack_preset.rb index 160afc1..4729473 100644 --- a/devops-service/app/api2/handlers/stack_preset.rb +++ b/devops-service/app/api2/handlers/stack_preset.rb @@ -1,5 +1,7 @@ require 'json' require 'lib/stack_presets/factory' +require 'workers/stack_sync_worker' +require 'workers/job_starter' require_relative "request_handler" module Devops @@ -17,10 +19,42 @@ module Devops def apply id, body preset = Devops::StackPresetsFactory.get(id) - preset.create_stack_from_preset(body) + stack = preset.create_stack_from_preset(body) Devops::Db.connector.stack_insert(stack) + + file = JobStarter.start_job(:worker, :sync_stack_till_not_in_progress, + provider: stack.provider, + stack_id: stack.id, + request: @request + ) + + puts "Syncing report is located here: #{file}" + + stack end + # def self.apply + # lambda { + # # check_privileges("stack_presets", "r") + # check_privileges('stack_template', 'w') + + # attrs = create_object_from_json_body + # preset = Devops::StackPresetsFactory.get(attrs.fetch('id')) + # stack = preset.create_stack_from_preset(attrs) + # settings.mongo.stack_insert(stack) + + # file = JobStarter.start_job(:worker, :sync_stack_till_not_in_progress, + # provider: stack.provider, + # stack_id: stack.id, + # request: request + # ) + + # puts "Syncing report is located here: #{file}" + + # create_response 'Created', stack.to_hash, 201 + # } + # end + end end end diff --git a/devops-service/app/api2/routes/stack.rb b/devops-service/app/api2/routes/stack.rb index 0b0144c..396e14c 100644 --- a/devops-service/app/api2/routes/stack.rb +++ b/devops-service/app/api2/routes/stack.rb @@ -44,7 +44,7 @@ module Devops app.get_with_headers "/stack/:stack_id/resources", :headers => [:accept] do |stack_id| check_privileges("stack", "r") - json Devops::API2_0::Handler::Stack.new(request, params).resources(stack_id) + json Devops::API2_0::Handler::Stack.new(request, params).resources(stack_id, nil) end app.get_with_headers "/stack/:stack_id/resources/:resource_id", :headers => [:accept] do |stack_id, resource_id|