[DRE-maint] Bug#987113: ruby-librarian: autopkgtest failure: times out everywhere

Evgeni Golov evgeni at debian.org
Sat Apr 24 19:55:57 BST 2021


On Sat, Apr 24, 2021 at 07:46:32PM +0200, Evgeni Golov wrote:
> Moin,
> 
> On Sat, Apr 17, 2021 at 10:20:45PM +0200, Paul Gevers wrote:
> > Librarian::Mock::Cli
> >   version
> > autopkgtest [04:30:22]: ERROR: timed out on command "su -s /bin/bash
> 
> poking around this…
> the tests pass fine as long the deb is not installed (so it's only
> running from the source checkout), and freeze instantly when it is.
> 
> (I can repro in a clean bullseye container, without autopkgtest/debci
> involved at all: rake -f debian/ruby-tests.rake)

So the issue is that when it runs the tests with the installed code, it
can't find the "root" of the project in [1] and tries to traverse in an
endless loop (as the original code assumes the tests are run in-tree).

Trivial patch that "fixes" it is the following:
diff --git lib/librarian/rspec/support/cli_macro.rb lib/librarian/rspec/support/cli_macro.rb
index 21ffb3f..2cf91e1 100644
--- lib/librarian/rspec/support/cli_macro.rb
+++ lib/librarian/rspec/support/cli_macro.rb
@@ -51,7 +51,7 @@ module Librarian
         def self.included(base)
           base.instance_exec do
             let(:project_path) do
-              project_path = Pathname.new(__FILE__).expand_path
+              project_path = Pathname.pwd.expand_path
               project_path = project_path.dirname until project_path.join("Rakefile").exist?
               project_path
             end


But I still find that super ugly and not sure it's the right approach
here.

[1] https://github.com/voxpupuli/librarian/blob/v0.6.4/lib/librarian/rspec/support/cli_macro.rb#L54-L55



More information about the Pkg-ruby-extras-maintainers mailing list