require 'json' require 'lib/stack_template_presets/factory' module Devops module Version2_0 module Handler class StackTemplatePreset def self.get_presets lambda { # check_privileges("stack_template_presets", "r") json Devops::StackTemplatePresetsFactory.list.map(&:to_hash) } end def self.get_preset lambda { # check_privileges("stack_template_presets", "r") json Devops::StackTemplatePresetsFactory.get(params['id']).to_hash } end def self.build_stack_template lamda { # check_privileges("stack_template_presets", "r") check_privileges('stack_template', 'w') attrs = create_object_from_json_body provider = attrs.delete('provider') stack_template_id = attrs.delete('stack_template_id') stack_template = build_template_from_preset(provider, stack_template_id, attrs) settings.mongo.stack_template_insert(template_model) create_response 'Created', template_model.to_hash, 201 } end end end end end