Closed evgeni closed 8 months ago
It started once I dropped the enable_only 🤔
It made me look it up: enable_only
makes it dnf module enable
instead of dnf module install
(https://github.com/puppetlabs/puppet/blob/5dae3b1f808d4fe0def1c5673c65273d2466ff43/lib/puppet/provider/package/dnfmodule.rb#L88-L103). I guess that doesn't work for the nodejs
module.
And there is code that should catch that error, but looks like that doesn't work.
Modules really, really, should never be installed (it was a mistake to allow that). (end-of-rant)
And there is code that should catch that error, but looks like that doesn't work.
The match is: /^(?:missing|broken) groups or modules: #{Regexp.quote(@resource[:name])}$/
, so in our case: ^broken groups or modules: nodejs$
, but the output is "… nodejs:18".
I think the match should be /^(?:missing|broken) groups or modules: #{Regexp.quote(args)}$/
instead
Yeah, using 389-ds
from the original ticket, I see:
# dnf module install -d 0 -e 1 -y 389-ds
Error: Problems in request:
broken groups or modules: 389-ds
# dnf module install -d 0 -e 1 -y 389-ds:1.4
Error: Problems in request:
broken groups or modules: 389-ds:1.4
# dnf module install -d 0 -e 1 -y 389-ds:1.4/sdf
Error: Problems in request:
missing groups or modules: 389-ds:1.4/sdf
also, no idea why exactly 18 has no default profile:
# dnf module list nodejs
Failed to set locale, defaulting to C.UTF-8
Last metadata expiration check: 0:07:22 ago on Sun Oct 29 17:42:59 2023.
CentOS Stream 8 - AppStream
Name Stream Profiles Summary
nodejs 10 [d] common [d], development, minimal, s2i Javascript runtime
nodejs 12 common [d], development, minimal, s2i Javascript runtime
nodejs 14 common [d], development, minimal, s2i Javascript runtime
nodejs 16 common [d], development, minimal, s2i Javascript runtime
nodejs 18 common, development, minimal, s2i Javascript runtime
nodejs 20 common [d], development, minimal, s2i Javascript runtime
Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled
also, no idea why exactly 18 has no default profile
LOOK MA, TWO BUGS FOR THE PRICE OF ONE!
# dnf module list nodejs
Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)
Name Stream Profiles Summary
nodejs 10 [d][e] common [d], development, minimal, s2i Javascript runtime
nodejs 12 common [d], development, minimal, s2i Javascript runtime
nodejs 14 common [d], development, minimal, s2i Javascript runtime
nodejs 16 common [d], development, minimal, s2i Javascript runtime
nodejs 18 common [d], development, minimal, s2i Javascript runtime
# dnf module list nodejs
Oracle Linux 8 Application Stream (x86_64)
Name Stream Profiles Summary
nodejs 10 [d] common [d], development, minimal, s2i Javascript runtime
nodejs 12 common [d], development, minimal, s2i Javascript runtime
nodejs 14 common [d], development, minimal, s2i Javascript runtime
nodejs 16 common [d], development, minimal, s2i Javascript runtime
nodejs 18 common [d], development, minimal, s2i Javascript runtime
LOOK MA, TWO BUGS FOR THE PRICE OF ONE!
I think the match should be
/^(?:missing|broken) groups or modules: #{Regexp.quote(args)}$/
instead
This is a new one for me: