# File lib/phusion_passenger/config/utils.rb, line 63 def complain_that_multiple_passenger_instances_are_running(server_instances) puts "It appears that multiple #{PROGRAM_NAME} instances are running. Please select" puts "a specific one by passing:" puts puts " --instance <#{PROGRAM_NAME} PID>" puts list_all_passenger_instances(server_instances) abort end
# File lib/phusion_passenger/config/utils.rb, line 85 def connect_to_passenger_admin_socket(options) return @server_instance.connect(options) rescue AdminTools::ServerInstance::RoleDeniedError PhusionPassenger.require_passenger_lib 'platform_info/ruby' STDERR.puts "*** ERROR: You are not authorized to query the status for " + "this #{PROGRAM_NAME} instance. Please try again with '#{PlatformInfo.ruby_sudo_command}'." exit 2 rescue AdminTools::ServerInstance::CorruptedDirectoryError STDERR.puts "*** ERROR: The server instance directory #{server_instance.path} is corrupted. " + "This could have two causes:\n" + "\n" + " 1. The #{PROGRAM_NAME} instance is no longer running, but it failed to cleanup the directory. " + "Please delete this directory and ignore the problem.\n" + " 2. An external program corrupted the directory. Please restart this #{PROGRAM_NAME} instance.\n" exit 2 end
# File lib/phusion_passenger/config/utils.rb, line 102 def is_enterprise? return defined?(PhusionPassenger::PASSENGER_IS_ENTERPRISE) && PhusionPassenger::PASSENGER_IS_ENTERPRISE end
# File lib/phusion_passenger/config/utils.rb, line 73 def list_all_passenger_instances(server_instances) puts "The following #{PROGRAM_NAME} instances are running:" server_instances.each do |instance| begin description = instance.web_server_description rescue Errno::EACCES, Errno::ENOENT description = nil end printf " PID: %-8s %s\n", instance.pid, description end end
# File lib/phusion_passenger/config/utils.rb, line 40 def select_passenger_instance if pid = @options[:instance] @server_instance = AdminTools::ServerInstance.for_pid(pid) if !@server_instance puts "*** ERROR: there doesn't seem to be a #{PROGRAM_NAME} instance running on PID #{pid}." list_all_passenger_instances(AdminTools::ServerInstance.list) puts puts "Please pass `--instance <#{PROGRAM_NAME}> PID>` to select a specific #{PROGRAM_NAME} instance." abort end else server_instances = AdminTools::ServerInstance.list if server_instances.empty? abort "*** ERROR: #{PROGRAM_NAME} doesn't seem to be running." elsif server_instances.size == 1 @server_instance = server_instances.first else complain_that_multiple_passenger_instances_are_running(server_instances) abort end end end
Generated with the Darkfish Rdoc Generator 2.