I'm trying to get my offline plugin pack installed with Logstash 7.2.0, but that fails with an error: NoMethodError: undefined method `each' for nil:NilClass
I first created my offline plugin pack succesfully:
# bin/logstash-plugin prepare-offline-pack --output /home/nivosupport/logstash-plugins-7.zip logstash-filter-drop logstash-filter-date logstash-filter-translate logstash-filter-prune
Offline package created at: /home/nivosupport/logstash-plugins-7.zip
You can install it with this command `bin/logstash-plugin install file:///home/nivosupport/logstash-plugins-7.zip`
To test my offline plugin pack I tried to install it again:
# DEBUG=1 bin/logstash-plugin install file:///home/nivosupport/logstash-plugins-7.zip
Using GEM_HOME=/usr/share/logstash/vendor/bundle/jruby/2.5.0
Using GEM_PATH=/usr/share/logstash/vendor/bundle/jruby/2.5.0
DEBUG: exec /usr/bin/jruby /usr/share/logstash/lib/pluginmanager/main.rb install file:///home/nivosupport/logstash-plugins-7.zip
Local file: /home/nivosupport/logstash-plugins-7.zip
Installing with strategy: LogStash::PluginManager::PackInstaller::Local
Installing file: /home/nivosupport/logstash-plugins-7.zip
Pack uncompressed to /tmp/studtmp-386e965b137f4d8cdead9a48f80f503b3753a8a59f62c301cba3e512dd22
Installing, logstash-filter-drop, version: 3.0.5 file: /tmp/studtmp-386e965b137f4d8cdead9a48f80f503b3753a8a59f62c301cba3e512dd22/logstash/logstash-filter-drop-3.0.5.gem
Installing, logstash-filter-prune, version: 3.0.3 file: /tmp/studtmp-386e965b137f4d8cdead9a48f80f503b3753a8a59f62c301cba3e512dd22/logstash/logstash-filter-prune-3.0.3.gem
Installing, logstash-filter-date, version: 3.1.9 file: /tmp/studtmp-386e965b137f4d8cdead9a48f80f503b3753a8a59f62c301cba3e512dd22/logstash/logstash-filter-date-3.1.9.gem
Installing, logstash-filter-translate, version: 3.2.3 file: /tmp/studtmp-386e965b137f4d8cdead9a48f80f503b3753a8a59f62c301cba3e512dd22/logstash/logstash-filter-translate-3.2.3.gem
Installing, concurrent-ruby, version: 1.1.5 file: /tmp/studtmp-386e965b137f4d8cdead9a48f80f503b3753a8a59f62c301cba3e512dd22/logstash/dependencies/concurrent-ruby-1.1.5.gem
Installing, tzinfo, version: 2.0.0 file: /tmp/studtmp-386e965b137f4d8cdead9a48f80f503b3753a8a59f62c301cba3e512dd22/logstash/dependencies/tzinfo-2.0.0.gem
Installing, rufus-scheduler, version: 3.0.9 file: /tmp/studtmp-386e965b137f4d8cdead9a48f80f503b3753a8a59f62c301cba3e512dd22/logstash/dependencies/rufus-scheduler-3.0.9.gem
NoMethodError: undefined method `each' for nil:NilClass
inject at /usr/share/logstash/lib/pluginmanager/bundler/logstash_injector.rb:66
temporary at /usr/share/jruby/lib/ruby/stdlib/bundler/settings.rb:136
inject at /usr/share/logstash/lib/pluginmanager/bundler/logstash_injector.rb:61
inject! at /usr/share/logstash/lib/pluginmanager/bundler/logstash_injector.rb:44
chdir at org/jruby/RubyDir.java:399
inject! at /usr/share/logstash/lib/pluginmanager/bundler/logstash_injector.rb:43
execute at /usr/share/logstash/lib/pluginmanager/pack_installer/local.rb:41
execute at /usr/share/logstash/lib/pluginmanager/install.rb:31
run at /usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/clamp-0.6.5/lib/clamp/command.rb:67
execute at /usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/clamp-0.6.5/lib/clamp/subcommand/execution.rb:11
run at /usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/clamp-0.6.5/lib/clamp/command.rb:67
run at /usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/clamp-0.6.5/lib/clamp/command.rb:132
<main> at /usr/share/logstash/lib/pluginmanager/main.rb:48
This used to be working fine with my old Logstash install (5.6.16). Note that an online plugin install seems to work ok:
# bin/logstash-plugin install logstash-codec-cef logstash-filter-drop logstash-filter-geoip logstash-filter-date logstash-filter-translate logstash-filter-prune
Validating logstash-codec-cef
Validating logstash-filter-drop
Validating logstash-filter-geoip
Validating logstash-filter-date
Validating logstash-filter-translate
Validating logstash-filter-prune
Installing logstash-codec-cef, logstash-filter-drop, logstash-filter-geoip, logstash-filter-date, logstash-filter-translate, logstash-filter-prune
Installation successful
Before filing a bug report I would like to know if someone can reproduce this problem?
Some more information about my system:
OS: SLES 15 SP1
Logstash: 7.2.0
Ruby: 2.5.5p157 (2019-03-15 revision 67260) [x86_64-linux-gnu]
jruby: 9.2.7.0 (2.5.3) 2019-08-17 fffffff OpenJDK 64-Bit Server VM 25.222-b10 on 1.8.0_222-b10 +jit [linux-x86_64]
Java: OpenJDK 64-Bit Server VM (build 11.0.4+11-suse-3.33.1-x8664, mixed mode)
Thanks!