- Homepage
- GitHub
- email jeremy at copiousfreetime dot org
git clone git://github.com/copiousfreetime/stickler.git
Stickler is a tool to organize and maintain an internal gem repository. Primarily, you would want to use Stickler if:
- You have proprietary gems that you want to have available via a gem server so
you may
gem install
them. - You would like to have a local mirror of third party gems from either http://rubygems.org or some other gem server.
- You want both (1) and (2) in the same server.
Installing stickler may be done via the standard gem installation
gem install stickler
Or downloaded from http://github.com/copiousfreetime/stickler/downloads
Stickler is broken up into a few commandline programs.
- stickler - Used to mainpulate gems that are in a stickler-server.
- stickler-server - The server process that manages gems.
- stickler-passenger-config - A helper process to generate Passenger configurations for
The easiest way to get up and running with stickler is to run the standalone
server stickler-server
and then use stickler
to interact with it.
% mkdir -p /tmp/stickler-test
% stickler-server start --daemonize /tmp/stickler-test
% stickler config --add --server http://localhost:6789 --upstream https://rubygems.org
server : http://localhost:6789
upstream : https://rubygems.org
% cat ~/.gem/stickler
---
:server: http://localhost:6789
:upstream: https://rubygems.org
% ls -1
heel-2.0.0.gem
hitimes-1.1.1.gem
launchy-0.3.5.gem
stickler-2.0.0.gem
% stickler push *.gem
Pushing gem(s) to http://localhost:6789/ ...
/Users/jeremy/tmp/gems/heel-2.0.0.gem -> OK http://localhost:6789/gems/heel-2.0.0.gem
/Users/jeremy/tmp/gems/hitimes-1.1.1.gem -> OK http://localhost:6789/gems/hitimes-1.1.1.gem
/Users/jeremy/tmp/gems/launchy-0.3.5.gem -> OK http://localhost:6789/gems/launchy-0.3.5.gem
/Users/jeremy/tmp/gems/stickler-2.0.0.gem -> OK http://localhost:6789/gems/stickler-2.0.0.gem
% stickler mirror --gem-version 1.4.3 logging
Asking http://localhost:6789/ to mirror logging-1.4.3 from rubygems.org : OK -> http://localhost:6789/gems/logging-1.4.3.gem
% stickler mirror --gem-version 1.16.2 trollop
Asking http://localhost:6789/ to mirror trollop-1.16.2 from rubygems.org : OK -> http://localhost:6789/gems/trollop-1.16.2.gem
Open your browser to http://localhost:6789
% launchy http://localhost:6789
% gem install hitimes --source http://localhost:6789/
% cat /etc/gemrc
---
:benchmark: false
:verbose: false
:update_sources: true
:bulk_threshold: 1000
:backtrace: false
:sources:
- http://stickler.example.com
gem: --no-rdoc --no-ri
The man pages that ship with the gem. They may be viewed if you also install the gem-man gem.
% gem install gem-man
% gem man stickler
View which manual?
1. stickler-passenger-config(1)
2. stickler-server(1)
3. stickler(1)
>
If you want to do development on stickler, I suggest using RVM
and creating a gemset for stickler. Then run rake how_to_contribute
Copyright (C) 2008-2013 Jeremy Hinegardner ISC License, See LICENSE for details.