#707: messages for responses
This commit is contained in:
parent
ddb79f82e9
commit
c98b418552
52
devops-service/core/devops-messages.rb
Normal file
52
devops-service/core/devops-messages.rb
Normal file
@ -0,0 +1,52 @@
|
||||
require 'yaml'
|
||||
|
||||
module Devops
|
||||
class Messages
|
||||
|
||||
@@messages = {}
|
||||
class << self
|
||||
def init
|
||||
lang = lang_key
|
||||
file = File.expand_path("../../messages/#{lang}.yml", __FILE__)
|
||||
merge(file)
|
||||
rescue => e
|
||||
puts "Can not load messages from '#{file}'"
|
||||
exit -6
|
||||
end
|
||||
|
||||
def merge file
|
||||
lang = lang_key
|
||||
messages = read_file(file)[lang]
|
||||
raise "It is undefined main key '#{lang}' in file '#{file}'" if messages.nil?
|
||||
@@messages.merge!(messages)
|
||||
end
|
||||
|
||||
def translate key, params={}
|
||||
msg = @@messages
|
||||
key.split(".").each do |msgk|
|
||||
msg = msg[key]
|
||||
raise "Invalid message key '#{key}'" if msg.nil?
|
||||
end
|
||||
raise "Invalid message value with key '#{key}', it must be a string" unless msg.is_a?(String)
|
||||
unless msg.nil?
|
||||
params.each do |k, v|
|
||||
msg = msg.gsub('%{#{k}}', v)
|
||||
end
|
||||
end
|
||||
msg
|
||||
end
|
||||
|
||||
alias_method :t, :translate
|
||||
|
||||
private
|
||||
def read_file file_path
|
||||
YAML.load_file(file_path)
|
||||
end
|
||||
|
||||
def lang_key
|
||||
DevopsConfig.config["messages.lang"] || "en"
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
@ -1,24 +1,11 @@
|
||||
require "wisper"
|
||||
require "lib/hash_ext"
|
||||
|
||||
=begin
|
||||
require "db/exceptions/invalid_record"
|
||||
require "db/exceptions/record_not_found"
|
||||
require "exceptions/dependency_error"
|
||||
require "db/validators/all"
|
||||
require "providers/provider_factory"
|
||||
|
||||
require "fog"
|
||||
|
||||
require_relative "routes/v2.0"
|
||||
|
||||
require "hooks"
|
||||
=end
|
||||
|
||||
require_relative "devops-loader"
|
||||
require_relative "devops-application"
|
||||
require_relative "devops-db"
|
||||
require_relative "devops-logger"
|
||||
require_relative "devops-messages"
|
||||
|
||||
require "lib/knife/knife_factory"
|
||||
|
||||
@ -26,8 +13,6 @@ require_relative "../sinatra/methods_with_headers"
|
||||
|
||||
require_relative "../applications"
|
||||
require_relative "devops-routes"
|
||||
#root = File.expand_path("../", __FILE__)
|
||||
#$:.push root
|
||||
|
||||
class DevopsService
|
||||
|
||||
@ -50,6 +35,7 @@ class DevopsService
|
||||
|
||||
config = DevopsConfig.config
|
||||
Devops::Routes.preffix = config[:url_prefix]
|
||||
Devops::Messages.init
|
||||
|
||||
apps = Devops::Application.applications
|
||||
apps.each do |a|
|
||||
|
||||
@ -8,7 +8,7 @@ module Validators
|
||||
end
|
||||
|
||||
def message
|
||||
"These users are missing in mongo: '#{@nonexistent_users.join("', '")}'."
|
||||
Devops::Messages.t("project.deploy_env.validation.users.not_exist", users: @nonexistent_users.join("', '"))
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
6
devops-service/messages/en.yml
Normal file
6
devops-service/messages/en.yml
Normal file
@ -0,0 +1,6 @@
|
||||
en:
|
||||
project:
|
||||
deploy_env:
|
||||
validation:
|
||||
users:
|
||||
not_exist: "These users are missing in mongo: '%{users}'"
|
||||
Loading…
Reference in New Issue
Block a user