fluke/devops-service/app/api2/parsers/stack.rb
2015-08-12 13:32:26 +03:00

28 lines
1004 B
Ruby

require_relative "request_parser"
module Devops
module API2_0
module Parser
class StackParser < RequestParser
def create
@body ||= create_object_from_json_body
project_name = check_string(@body["project"], "Parameter 'project' must be a not empty string")
env_name = check_string(@body["deploy_env"], "Parameter 'deploy_env' must be a not empty string")
check_string(@body["name"], "Parameter 'name' must be a not empty string", true, false)
list = check_array(@body["run_list"], "Parameter 'run_list' is invalid, it should be not empty array of strings", String, true, true)
Validators::Helpers::RunList.new(list).validate! unless list.nil?
@body
end
def run_list
list = check_array(create_object_from_json_body(Array), "Body must contains not empty array of strings")
Validators::Helpers::RunList.new(list).validate!
list
end
end
end
end
end