Error Bundler::HTTPError, - what am I missing?


(Robert Mckeown) #1

I am attempting to install a custom plugin from a gem. This works fine when I do the install on an environment connected to the internet. However, on an environment not so connected, I get the following after

plugin install

Error Bundler::HTTPError, retrying 1/10
Could not fetch specs from https://rubygems.org/

My plug in has the following
require 'net/http'
require 'rest-client'
require 'json

I am assuming this is related to net/http. What might I be missing in my gemspec (or how could I find out :slight_smile: ).
This plugin needs to be installed in an env. with no external connectivity and so I need to bring everything with me for the install.
Thx,
Rob


(Robert Mckeown) #2

Still new to this Ruby/Packaging stuff so be gentle as I come to various realizations. Everything I say below is caveated with 'I think'
So I guess it's not just the net/http stuff. That is simply the attempts to get Ruby gem stuff over the net.
I thought maybe the packager bundled up the actual gems .. does it? or does it just bundle up references and at install time those references are used to download the reqd gems?

In my case, where at install time I will not have access to the Ruby repository, is there a recommended way to package up all the gems my plugin will be dependent upon? Where would I install them (is there a standard place that logstash will look)
Again, thx for any help

Rob


(Ed) #3

Well depends on where your deploying too :grinning:

I have been starting to think about this myself but have not crossed this problem yet.

I saw this article when quickly looking

Let me know what you come up with as I will probably use the proxy method as it is simple and needs the least work.Though I would prefer the RPM method


(Robert Mckeown) #4

I'm deploying to an env with no external connectivity.
I did a bunch of research since posting the original question (including hitting that ...rubygems-on-machine.. one, so I'm much wiser today than yesterday. :slight_smile: )
In my particular case, I identified the additional gems that I needed, by looking at my 'require ...' statements, and doing some gem install -i <?> ,for each of them. I had less then 10 to deal with. Then I went back to rubygems.org and pulled down each of the identified gems to a local dir, and from there packaged (tar'd) them up. Installed them onsite (from my thumbdrive) logstash/plugin install --no-verify .gem.
After that I was able to install my original custom plugins.

Probably not optimal, but I'm under pressure to get this thing simply working on site! I may circle back and work up a more elegant delivery approach, or might just wait till one of those other related activities matures and we have a good solution here.

Biggest original headache was that the logstash/plugin install didn't tell me what it was missing/looking for, just that it couldn't get the specs from rubygems.org.

Anyway, thx for the good suggestions!


(system) #5