New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
test_off_tls1_2 test faliure (puma 6.1.1) #3093
Comments
Ah, running the test suite with
|
This seems like an issue with your environment and not Puma so I would like to move it to an discussion, however, we have #2930 so it should probably be closed as a duplicate. Feel free to figure out what's going on and report back. Is it possible to replicate in Docker (or similar) or CI? Would be great to provide such steps so others can try it too. |
Hello! I don't think it'd be easily reproduced in a Docker container if your CI runs these and passes. It's probably something specific/more restricted in the Guix build container. Guix is designed to make reproducible environments easy though, so I could push my wip Guix branch if you'd like to try it, it can be done with something like (assuming you've already installed Guix on your machine):
Assuming the above
It should reproduce what I see exactly. |
Outside of the build container there is only 2 problems, one of them being a too low setrlimit on my machine (can be disregarded); the other one about TLS I'm not sure:
Perhaps the container problems stem from the fact that dead processes are not reaped in this environment (the PID 1 is not an init but a Guile script). |
The tests run on GitHub Actions which are virtual machines with Ubuntu. Could we install guix there to reproduce the problem? (And how does one do it?) You can experiment in your fork of Puma. |
Installing Guix can be done on any GNU/Linux system like so:
The finer details can be read at https://guix.gnu.org/manual/en/html_node/Binary-Installation.html. The install script automates all of the manual steps. |
Looks like an SSL version issue. If you run with |
I'm interested in this. I would consider committing some Guix-related and Nix-related support files to the repo. |
Hey, nice to hear that :-). The instructions I gave above should work in case you want to experiment. But I think a possible explanation for the SSL test failure; the Guix openssl used is detected as Looking at the test code though, it seems it shouldn't matter:
as long as the version detected is newer than 1.1.1e it is expected to work the same. Output with PUMA_TEST_DEBUG=1:
|
Thanks for checking this. The current test file does not show the curl output when a failure occurs, so it's not very helpful. I've got a patch in a branch in my fork, see: I think that should show the curl output. Can you try running it? |
@Apteryks I think this is now about 'SSL session reuse'? Might we change the title/subject of the issue? |
Hello! I tried it with the command:
And the tail of the build log reads as:
|
Describe the bug
When I run
rake test
, I see:If I try running with
./pre-inst-env guix build puma
, attempting to build it in the Guix minimal container, the result is similar but I get a few extra failures/errors:Puma config:
Building version 6.1.1 from git.
To Reproduce
rake test
in the Guix puma environment, which has Ruby 2.7.4 and the following direct dependencies:Expected behavior
The test suite should pass.
Desktop (please complete the following information):
The text was updated successfully, but these errors were encountered: