Source: ruby-bunny Version: 2.14.4-3 Severity: serious Tags: ftbfs sid I've just noticed that ruby-bunny FTBFS when building using a pristine schroot on sbuild:
--8<---------------cut here---------------start------------->8--- Waiting for pid file '/tmp/d20200814-17660-k3x0b6/mnesia/bunny.pid' to appear ## ## RabbitMQ 3.8.5 ## ## ########## Copyright (c) 2007-2020 VMware, Inc. or its affiliates. ###### ## ########## Licensed under the MPL 1.1. Website: https://rabbitmq.com Doc guides: https://rabbitmq.com/documentation.html Support: https://rabbitmq.com/contact.html Tutorials: https://rabbitmq.com/getstarted.html Monitoring: https://rabbitmq.com/monitoring.html Logs: /tmp/d20200814-17660-k3x0b6/log/bu...@paluero.log /tmp/d20200814-17660-k3x0b6/log/bunny@paluero_upgrade.log Config file(s): /tmp/d20200814-17660-k3x0b6/rabbitmq.conf Starting broker... completed with 4 plugins. Error: operation wait on node bunny@paluero timed out. Timeout value used: 10000 rake aborted! command failed: ["/usr/lib/rabbitmq/bin/rabbitmqctl", "wait", "/tmp/d20200814-17660-k3x0b6/mnesia/bunny.pid"] /<<PKGBUILDDIR>>/debian/ruby-tests.rake:53:in `run' /<<PKGBUILDDIR>>/debian/ruby-tests.rake:62:in `start_rabbitmq_server' /<<PKGBUILDDIR>>/debian/ruby-tests.rake:75:in `block in <top (required)>' /usr/share/rubygems-integration/all/gems/rake-13.0.1/exe/rake:27:in `<top (required)>' Tasks: TOP => default (See full trace by running task with --trace) ERROR: Test "ruby2.7" failed. Exiting. dh_auto_install: error: dh_ruby --install /<<PKGBUILDDIR>>/debian/ruby-bunny returned exit code 1 make[1]: *** [debian/rules:10: override_dh_auto_install] Error 25 make[1]: Leaving directory '/<<PKGBUILDDIR>>' make: *** [debian/rules:6: binary] Error 2 dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2 --8<---------------cut here---------------end--------------->8--- If we try to build in a container/VM using dpkg-buildpackage and a non-root user, the error happens even earlier: --8<---------------cut here---------------start------------->8--- Waiting for pid file '/tmp/d20200814-28938-5mzc2m/mnesia/bunny.pid' to appear 23:47:37.895 [error] 23:47:37.899 [error] BOOT FAILED BOOT FAILED 23:47:37.899 [error] =========== =========== 23:47:37.900 [error] ERROR: distribution port 25672 in use by rabbit@magical-boa ERROR: distribution port 25672 in use by rabbit@magical-boa 23:47:37.900 [error] 23:47:38.902 [error] Supervisor rabbit_prelaunch_sup had child prelaunch started with rabbit_prelaunch:run_prelaunch_first_phase() at undefined exit with reason {dist_port_already_used,25672,"rabbit","magical-boa"} in context start_error 23:47:38.903 [error] CRASH REPORT Process <0.153.0> with 0 neighbours exited with reason: {{shutdown,{failed_to_start_child,prelaunch,{dist_port_already_used,25672,"rabbit","magical-boa"}}},{rabbit_prelaunch_app,start,[normal,[]]}} in application_master:init/4 line 138 {"Kernel pid terminated",application_controller,"{application_start_failure,rabbitmq_prelaunch,{{shutdown,{failed_to_start_child,prelaunch,{dist_port_already_used,25672,\"rabbit\",\"magical-boa\"}}},{rabbit_prelaunch_app,start,[normal,[]]}}}"} Kernel pid terminated (application_controller) ({application_start_failure,rabbitmq_prelaunch,{{shutdown,{failed_to_start_child,prelaunch,{dist_port_already_used,25672,"rabbit","magical-boa"}}},{rabbi Crash dump is being written to: erl_crash.dump...done Error: operation wait on node bunny@magical-boa timed out. Timeout value used: 10000 rake aborted! command failed: ["/usr/lib/rabbitmq/bin/rabbitmqctl", "wait", "/tmp/d20200814-28938-5mzc2m/mnesia/bunny.pid"] /home/sergio/ruby-bunny/debian/ruby-tests.rake:53:in `run' /home/sergio/ruby-bunny/debian/ruby-tests.rake:62:in `start_rabbitmq_server' /home/sergio/ruby-bunny/debian/ruby-tests.rake:75:in `block in <top (required)>' /usr/share/rubygems-integration/all/gems/rake-13.0.1/exe/rake:27:in `<top (required)>' Tasks: TOP => default (See full trace by running task with --trace) ERROR: Test "ruby2.7" failed. Exiting. dh_auto_install: error: dh_ruby --install /home/sergio/ruby-bunny/debian/ruby-bunny returned exit code 1 --8<---------------cut here---------------end--------------->8--- There are a few problems with the testcase: - As stated above, it can't run under as a non-root user. For example, this won't work: def start_rabbitmq_server fork do exec('/usr/lib/rabbitmq/bin/rabbitmq-server') end pidfile = File.join($tmpdir, 'mnesia', 'bunny.pid') run('/usr/lib/rabbitmq/bin/rabbitmqctl', 'wait', pidfile) run('./bin/ci/before_build') end - The file "bunny.pid" isn't (always) named like that. Here, for example, it's named "bunny@${HOST}.pid". This will break the following code: pidfile = File.join($tmpdir, 'mnesia', 'bunny.pid') run('/usr/lib/rabbitmq/bin/rabbitmqctl', 'wait', pidfile) - It tries to "pkill epmd", which also won't work when run as non-root. It seems to me like this test should be executed by autopkgtest, because the operations listed above would then be able to succeed. Thanks, -- Sergio GPG key ID: 237A 54B1 0287 28BF 00EF 31F4 D0EB 7628 65FC 5E36 Please send encrypted e-mail if possible https://sergiodj.net/
signature.asc
Description: PGP signature