Added passeneg manager. Part 12

This commit is contained in:
Alexey Berezhok
2024-12-30 00:16:14 +03:00
parent 5443ea44dd
commit 6bd321a1da
11 changed files with 487 additions and 240 deletions

View File

@@ -140,11 +140,15 @@ class PassengerWorker < Kernel::ModuleCoreWorker
when "set_user_ruby"
domain = args[1]
ruby_ver = args[2]
log_mod = args[3]
if domain.nil? || ruby_ver.nil?
log_return("Domain or ruby version should be specified. #{args}")
else
if File.exist?(ruby_ver)
dom_file = get_module_conf("domains.conf")
if !log_mod.nil? && log_mod.to_s.strip == "on"
ruby_ver = "#{ruby_ver}|on"
end
hestia_save_file_key_pair(dom_file, domain, ruby_ver)
ACTION_OK
else
@@ -168,11 +172,13 @@ class PassengerWorker < Kernel::ModuleCoreWorker
dom_file = get_module_conf("domains.conf")
format = (args[2].nil? ? "shell" : args[2].strip)
val = hestia_get_file_key_pair(dom_file, domain)
val_spl = val.split("|", 2)
result = Hash.new
result["RUBY"] = val
result["RUBY"] = val_spl[0]
result["LOG"] = (val_spl.length > 1 ? val_spl[1] : "off")
a_result = []
a_result << result
hestia_print_array_of_hashes(a_result, format, "RUBY")
hestia_print_array_of_hashes(a_result, format, "RUBY,LOG")
ACTION_OK
end
when "list_users_ruby"
@@ -181,17 +187,31 @@ class PassengerWorker < Kernel::ModuleCoreWorker
val = hestia_get_file_keys_value(dom_file)
result = Array.new
val.each do |key, value|
result << { "DOMAIN" => key, "RUBY" => value }
vv = value.split("|", 2)
result << { "DOMAIN" => key, "RUBY" => vv[0], "LOG" => (vv.length > 1 ? vv[1] : "off") }
end
hestia_print_array_of_hashes(result, format, "DOMAIN,RUBY")
hestia_print_array_of_hashes(result, format, "DOMAIN,RUBY,LOG")
ACTION_OK
when "get_tpl_path"
result = [{ "RUBY_TPL" => get_module_paydata_dir }]
format = (args[1].nil? ? "shell" : args[1].strip)
hestia_print_array_of_hashes(result, format, "RUBY_TPL")
ACTION_OK
when "help"
puts "#{$0} passenger_manager COMMAND [OPTIONS] [json|csv|plain]"
puts "COMMANDS:"
puts " get_rubys - list all available rubys pathes"
puts " add_ruby [full_path_to_ruby_binary] - add ruby to list"
puts " del_ruby [full_path_to_ruby] - delete ruby from list"
puts " set_user_ruby [domain] [full_path_to_ruby_binary] [logging on or mpty] - set ruby for domain"
puts " disable_user [domain] - delete ruby for domain"
puts " get_user_ruby [domain] - show ruby path for domain or empty if not set"
puts " list_users_ruby - show rubys for all domains"
puts " get_tpl_path - show path for module's templates"
puts " help - help"
ACTION_OK
else
log_return("Unknown commands. #{args}")
log_return("Unknown command. #{args}")
end
end

View File

@@ -28,10 +28,11 @@ server {
passenger_user %user%;
passenger_group %user%;
passenger_ruby %rubypath%;
passenger_friendly_error_pages %rubylog%;
location / {
passenger_base_uri /;
passenger_app_root %docroot%;
passenger_app_root %docrtpriv%;
passenger_document_root %docroot%;
passenger_startup_file config.rb;
passenger_app_type rack;

View File

@@ -19,10 +19,11 @@ server {
passenger_user %user%;
passenger_group %user%;
passenger_ruby %rubypath%;
passenger_friendly_error_pages %rubylog%;
location / {
passenger_base_uri /;
passenger_app_root %docroot%;
passenger_app_root %docrtpriv%;
passenger_document_root %docroot%;
passenger_startup_file config.rb;
passenger_app_type rack;