Hi, I've created a custom plugin derived from logstash-input-redis
that adds support for additional processing of output that redis emits but which is not parsed by the upstream plugin.
I have successfully built the gem and installed all dependencies, but when I run logstash-plugin install mygem.gem
I get the following error:
ERROR: Installation Aborted, message: Bundler could not find compatible versions for gem "logstash-core-plugin-api":
In snapshot (Gemfile.lock):
logstash-core-plugin-api (= 1.10.0)
I have manually downloaded and installed that package version with jgem and I see that it is installed:
$ jgem list | grep logstash-core-plugin-api
logstash-core-plugin-api (2.1.8 java, 1.1.0 java)
The upstream plugin from elastic depends on ~> 2.0 of this gem, and there are no references to 1.1 anywhere in the code, so this dependency must be coming from somewhere deep down
If I remove the copy of version 2.1.8 and re-run the install, the same error results. Even when using --local
option and providing full path to the gem. This suggests to me there might be some issue with the jruby environment but I don't know how to debug it.
Output for jbundle update
shows a missing classpath.rb, which does not exist. Not sure if that's relevant.
$ jbundle update
Jar dependencies are up to date !
/usr/local/lib/ruby/gems/2.3.0/gems/jbundler-0.9.3/lib/jbundler/classpath_file.rb:34:in `load': cannot load such file -- /Users/hart/Documents/logstash-input-redis/.jbundler/classpath.rb (LoadError)
from /usr/local/lib/ruby/gems/2.3.0/gems/jbundler-0.9.3/lib/jbundler/classpath_file.rb:34:in `load_classpath'
Any ideas? Thanks!