** Description changed: + [Impact] + + puppet crashes if one tries to create/ensure symlinks via a puppet + manifest. I believe this is an feature broadly used by our users. + + [Test Plan] + + $ lxc launch ubuntu-daily:jammy puppet-test + $ lxc shell puppet-test + # apt update && apt install -y puppet + # cat <<EOF > hellopuppet.pp + file { '/tmp/link-to-motd': + ensure => 'link', + target => '/etc/motd', + } + EOF + # puppet apply hellopuppet.pp + Notice: Compiled catalog for k1.lxd in environment production in 0.01 seconds + Error: Could not set 'link' on ensure: wrong number of arguments (given 3, expected 2) (file: /home/ubuntu/hellopuppet.pp, line: 1) + Error: Could not set 'link' on ensure: wrong number of arguments (given 3, expected 2) (file: /home/ubuntu/hellopuppet.pp, line: 1) + Wrapped exception: + wrong number of arguments (given 3, expected 2) + Error: /Stage[main]/Main/File[/tmp/link-to-motd]/ensure: change from 'absent' to 'link' failed: Could not set 'link' on ensure: wrong number of arguments (given 3, expected 2) (file: /home/ubuntu/hellopuppet.pp, line: 1) + Notice: Applied catalog in 0.02 seconds + + With the proposed fix the crash should not happen and the link created. + + [Where problems could occur] + + The risk of the patch introduce a bug is quite low, what might happen is + some more occurrences of this issue throughout the codebase. I went + through upstream git repo and issue tracker and I think this is enough. + + [Original description] + Hi, the puppet package that comes with ubuntu 22.04 is not completely working under ubuntu 22.04, since it is (outdated) puppet 5 which is not compatible with ruby versions above ruby 2.7, where ubuntu 22.04 comes with ruby 3. + The problem seems to be just a minor problem, it can't set logical links + : - The problem seems to be just a minor problem, it can't set logical links : - - Could not set 'link' on ensure: wrong number of arguments (given 3, expected 2) - + Could not set 'link' on ensure: wrong number of arguments (given 3, + expected 2) The bug is known and discussed in upstream debian under https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1009643 but they do believe that it is not worth wasting time to fix that old version and rather update to puppet 7. + From what they tell, it takes at least puppet 7.8 to run under ruby 3. - From what they tell, it takes at least puppet 7.8 to run under ruby 3. - - - So as a workaround, one could use the regular puppet gem (which is not a server anymore, just the client since 6) on the client side (currently 7.16.0) and use the docker image from + So as a workaround, one could use the regular puppet gem (which is not a + server anymore, just the client since 6) on the client side (currently + 7.16.0) and use the docker image from https://hub.docker.com/r/puppet/puppetserver on the server side. Maybe worth considering to turn this into a snap. ProblemType: Bug DistroRelease: Ubuntu 22.04 Package: puppet 5.5.22-4 [modified: usr/bin/puppet] ProcVersionSignature: Ubuntu 5.15.0-25.25-generic 5.15.30 Uname: Linux 5.15.0-25-generic x86_64 ApportVersion: 2.20.11-0ubuntu82 Architecture: amd64 CasperMD5CheckResult: unknown CurrentDesktop: LXQt Date: Fri Apr 22 15:52:08 2022 InstallationDate: Installed on 2022-04-02 (19 days ago) InstallationMedia: Lubuntu 22.04 LTS "Jammy Jellyfish" - Beta amd64 (20220329.1) PackageArchitecture: all SourcePackage: puppet UpgradeStatus: No upgrade log present (probably fresh install)
-- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1969939 Title: puppet 5 package incompatible with ruby 3 / ubuntu 22.04 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/puppet/+bug/1969939/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs