voxpupuli / puppet-rvm

A puppet module for installing and using RVM (Ruby Version Manager)
https://forge.puppet.com/puppet/rvm
BSD 3-Clause "New" or "Revised" License
32 stars 102 forks source link

add redhat/centos 9, add Debian 12, add Ubuntu 22.04, 23.04, 23.10 #206

Open mick-t opened 5 months ago

mick-t commented 5 months ago

Pull Request (PR) description

add redhat/centos 9, add Debian 12, add Ubuntu 22.04, 23.04, 23.10

This Pull Request (PR) fixes the following issues

Support for newer redhat variants, debian, & ubuntu.

ekohl commented 5 months ago

CentOS 8 fails because of some timeout that we see every now and then. I think this attempts to retrieve the container.

CentOS 9 fails because Ruby 2 can't build on EL9. AFAIK this is something with OpenSSL 3.0. We may need to move our test suite to Ruby 3+ versions there.

Debian 12 fails because it uses a Ruby version that also blocks https://github.com/voxpupuli/puppet-rvm/pull/200.

Ubuntu 22.04 also has some compile error and think it may also be OpenSSL 3.0

Ubuntu 23.04 and 23.10 aren't supported in our CI right now. Looks like there is a Puppet 7 OS package, so we can enhance our CI to run like Debian 12 does today (where there's no Puppet AIO package either).

mick-t commented 5 months ago

The Ubuntu issues are most likely related to openssl issues as per this. Maybe the best thing to do is to try Ruby 3.1 on these newer distros. I don't see where in the code to do?

ekohl commented 5 months ago

In spec/acceptance we have that code

mick-t commented 5 months ago

Debian 12 is failing with:

 undefined method `escape' for URI:Module

            uri = URI.parse(URI.escape(source))
                               ^^^^^^^ (file: /etc/puppet/code/modules/rvm/manifests/system.pp, line: 39)

And Puppet support for Ruby 3.x isn't until Puppet 8:

And it looks like the test is installed Ruby 3.2.2?

Ubuntu 22.04 is doing the same.

ekohl commented 5 months ago

Yes, URI.escape has been dropped in Ruby 3. The problem is in the gnupg module we depend on. I can't seem to find the time to update https://github.com/dgolja/golja-gnupg/pull/38. For our own infra I'm considering switching from rvm to rbenv, but haven't decided on that.