| Puppet Version: 5.5.20 and 6.15.0 Puppet Server Version: N/A OS Name/Version: macOSX 10.15.4 I observe every run puppet emitting warning messages like this:
$ puppet --version |
Ignoring posix-spawn-0.3.13 because its extensions are not built. Try: gem pristine posix-spawn --version 0.3.13 |
Ignoring ruby-augeas-0.5.0 because its extensions are not built. Try: gem pristine ruby-augeas --version 0.5.0 |
Ignoring posix-spawn-0.3.13 because its extensions are not built. Try: gem pristine posix-spawn --version 0.3.13 |
Ignoring ruby-augeas-0.5.0 because its extensions are not built. Try: gem pristine ruby-augeas --version 0.5.0 |
Ignoring posix-spawn-0.3.13 because its extensions are not built. Try: gem pristine posix-spawn --version 0.3.13 |
Ignoring ruby-augeas-0.5.0 because its extensions are not built. Try: gem pristine ruby-augeas --version 0.5.0 |
6.15.0
|
Puppet picks up GEM_HOME environment variable, which is used for configuring system ruby, which is different
$ /opt/puppetlabs/puppet/bin/ruby --version |
ruby 2.5.8p224 (2020-03-31 revision 67882) [x86_64-darwin19] |
|
$ ruby --version |
ruby 2.6.3p62 (2019-04-16 revision 67580) [universal.x86_64-darwin19]
|
Desired Behavior: Since puppet comes with it's own ruby, system ruby settings should be ignored. bolt already handles it properly:
$ head /opt/puppetlabs/bin/bolt |
#!/bin/sh |
|
|
# avoid influences from already pre-configured other ruby environments |
env -u GEM_HOME -u GEM_PATH -u DLN_LIBRARY_PATH -u RUBYLIB -u RUBYLIB_PREFIX -u RUBYOPT -u RUBYPATH -u RUBYSHELL -u LD_LIBRARY_PATH -u LD_PRELOAD SHELL=/bin/sh /opt/puppetlabs/bolt/bin/bolt "$@"
|
|