'private' gems/gems hierarchy


#1

Greetings,
disclaimer: just installed rubygems, so no pratical experience and only
skim some docs

There has been some questions/comments about how to get ruby ‘accepted’
in your work environment. I was hoping to use the ‘build it and they
will come approach’. I.e. code some utilities to help in job function.
In order to be successful, not only the utilities need to be useful,
but ‘easy’ to distribute. The utilities would be very ‘corporate’
specific. I would not need (and in some cases, not want) them to be
'publicly available. I guess the gem could be ‘distributed’ on a
private system, but then why ‘polute’ the gem ‘index/repository’ with
those entries.

Is is currently possible to create/setup a hierarchy. I would like to
use standard gem commands that would ‘query’ a private server first, but
that could ‘redirect’ the query to the ‘public’ gem site, if query does
not match on the private server.

Hope I am making some sense.
Any pointers appreciated,
Dany


#2

From: “Dany C.” removed_email_address@domain.invalid

There has been some questions/comments about how to get ruby ‘accepted’
in your work environment. I was hoping to use the ‘build it and they
will come approach’. I.e. code some utilities to help in job function.
In order to be successful, not only the utilities need to be useful,
but ‘easy’ to distribute.

Sorry I can’t answer your gems question, but RubyScript2Exe is another
way to make easily distributable ruby scripts:

http://www.erikveen.dds.nl/rubyscript2exe/index.html#6.0.0

Hope this helps,

Bill


#3

Dany C. wrote:

Is is currently possible to create/setup a hierarchy. I would like to
use standard gem commands that would ‘query’ a private server first, but
that could ‘redirect’ the query to the ‘public’ gem site, if query does
not match on the private server.

You can specify what URL to use to fetch gems. For your case, you could
set this to a local network URL.

(Some folks already do stuff like this, releasing beta or unstable gems
by hosting them on public, though non-standard, gem server locations. )

I think it is possible to set this in a gem config file so that users
do not have to type it out on each gem install. Or wrap it in script so
that users can more easily opt to install from the local net or the
public gem repositories.

James

http://www.ruby-doc.org - Ruby Help & Documentation
http://www.artima.com/rubycs/ - Ruby Code & Style: Writers wanted
http://www.rubystuff.com - The Ruby Store for Ruby Stuff
http://www.jamesbritt.com - Playing with Better Toys
http://www.30secondrule.com - Building Better Tools


#4

danyc wrote:

There has been some questions/comments about how to get ruby ‘accepted’
in your work environment. I was hoping to use the ‘build it and they
will come approach’. I.e. code some utilities to help in job function.
In order to be successful, not only the utilities need to be useful,
but ‘easy’ to distribute. The utilities would be very ‘corporate’
specific. I would not need (and in some cases, not want) them to be
'publicly available. I guess the gem could be ‘distributed’ on a
private system, but then why ‘polute’ the gem ‘index/repository’ with
those entries.

Is is currently possible to create/setup a hierarchy. I would like to
use standard gem commands that would ‘query’ a private server first, but
that could ‘redirect’ the query to the ‘public’ gem site, if query does
not match on the private server.

Yes, it is easy to setup a private gem server. See
http://docs.rubygems.org/read/chapter/18#page81 for details.

To use your own repository, just specify the --source parameter on the
gem command line to point to your URL you have setup.

Currently, RubyGems will attempt to satisfy all of its dependencies from
a single source. This limitation will be removed in the future.

– Jim W.