When running sudo passenger-config system-properties, it should return information about the system Passenger Phusion is running in.
What is the actual behavior?
When running this command it returns an error as follows:
$ sudo passenger-config system-properties
/usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:156:in `rescue in generate_type': can't serialize PhusionPassenger::PlatformInfo::VersionComparer (ArgumentError)
from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:155:in `generate_type'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:191:in `block in generate_Hash'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `each'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `map'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `generate_Hash'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:155:in `generate_type'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:191:in `block in generate_Hash'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `each'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `map'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `generate_Hash'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:155:in `generate_type'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:147:in `generate'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/config/system_properties_command.rb:43:in `run'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/config/main.rb:79:in `run!'
from /usr/bin/passenger-config:37:in `<main>'
/usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:155:in `generate_type': undefined method `generate_PhusionPassenger::PlatformInfo::VersionComparer' for PhusionPassenger::Utils::JSON:Class (NoMethodError)
from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:191:in `block in generate_Hash'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `each'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `map'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `generate_Hash'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:155:in `generate_type'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:191:in `block in generate_Hash'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `each'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `map'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `generate_Hash'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:155:in `generate_type'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:147:in `generate'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/config/system_properties_command.rb:43:in `run'
from /usr/lib/ruby/vendor_ruby/phusion_passenger/config/main.rb:79:in `run!'
from /usr/bin/passenger-config:37:in `<main>'
This is the same whether the command is run with sudo or not.
This has been reliably reproduced on 6 different servers with the same environment (OS, Apache2, Passenger, Ruby)
How can we reproduce it?
Your answer: Set up environment with Ubuntu 22.04, Apache 2.4.52, Passenger Phusion 6.0.23, ruby 3.2.2 and run the command.
Question 2: Passenger version and integration mode:
Your answer: Open Source 6.0.23 integrated with Apache2 2.4.52 using mod_passenger
Question 3: OS or Linux distro, platform (including version):
Your answer: Ubuntu 22.04 x86_64
Question 4: Passenger installation method:
Your answer:
[ ] RubyGems + Gemfile
[ ] RubyGems, no Gemfile
[ X ] Phusion APT repo (from https://oss-binaries.phusionpassenger.com/apt/passenger jammy Release)
[ ] Phusion YUM repo
[ ] OS X Homebrew
[ ] source tarball
[ ] Other, please specify:
Question 5: Your app's programming language (including any version managers) and framework (including versions):
Your answer: Ruby 3.2.2 using Rails 7.1.3.4, though this is happening at a pre-application level. Ruby is installed using RVM.
Question 6: Are you using a PaaS and/or containerization? If so which one?
For example: Heroku, Amazon Container Services, Docker 1.9 with an image based on passenger-docker
Your answer: No
Question 7: Anything else about your setup that we should know?
Your answer: Nothing that I can think of. We can pretty easily run any troubleshooting steps in this environment so please let us know if we can provide additional information or testing.
Issue report
Question 1: What is the problem?
When running
sudo passenger-config system-properties
, it should return information about the system Passenger Phusion is running in.When running this command it returns an error as follows:
This is the same whether the command is run with
sudo
or not.This has been reliably reproduced on 6 different servers with the same environment (OS, Apache2, Passenger, Ruby)
Your answer: Set up environment with Ubuntu 22.04, Apache 2.4.52, Passenger Phusion 6.0.23, ruby 3.2.2 and run the command.
Question 2: Passenger version and integration mode:
Your answer: Open Source 6.0.23 integrated with Apache2 2.4.52 using mod_passenger
Question 3: OS or Linux distro, platform (including version):
Your answer: Ubuntu 22.04 x86_64
Question 4: Passenger installation method:
Your answer: [ ] RubyGems + Gemfile [ ] RubyGems, no Gemfile [ X ] Phusion APT repo (from https://oss-binaries.phusionpassenger.com/apt/passenger jammy Release) [ ] Phusion YUM repo [ ] OS X Homebrew [ ] source tarball [ ] Other, please specify:
Question 5: Your app's programming language (including any version managers) and framework (including versions):
Your answer: Ruby 3.2.2 using Rails 7.1.3.4, though this is happening at a pre-application level. Ruby is installed using RVM.
Question 6: Are you using a PaaS and/or containerization? If so which one?
Your answer: No
Question 7: Anything else about your setup that we should know?
Your answer: Nothing that I can think of. We can pretty easily run any troubleshooting steps in this environment so please let us know if we can provide additional information or testing.