[7.2.0] offline plugin installation fails

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!

Can anybody confirm if offline plugin installation is working in 7.3.0? If so, I have the option of upgrading to 7.3.0.

Thanks!

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.