Skip to content
This repository

a tool to organize and maintain an internal gem distribution server

tag: v0.1.0

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 bin
Octocat-spinner-32 data
Octocat-spinner-32 lib
Octocat-spinner-32 spec
Octocat-spinner-32 tasks
Octocat-spinner-32 .gitignore
Octocat-spinner-32 COPYING
Octocat-spinner-32 HISTORY.rdoc
Octocat-spinner-32 LICENSE
Octocat-spinner-32 README.rdoc
Octocat-spinner-32 Rakefile
Octocat-spinner-32 TODO
Octocat-spinner-32 gemspec.rb
README.rdoc

Stickler

DESCRIPTION

Stickler is a tool to organize and maintain an internal gem distribution.

At times it is useful to have complete control over the availability of the gems for you testing, staging and production environments. In these cases you probably do not want to accidentally type 'gem update' and get a new untested version of a gem installed on your machines. This is where Stickler helps.

Configure stickler with the the names and versions of the gems you require for your deployment and it will organize and setup everything that is necessary for a standard web server to function as your internal gem distribution server.

INSTALLATION

Install as a gem:

gem install stickler

Or Get it from RubyForge or github

SYNOPSIS

Using stickler is fairly simple. First install it, then create a new stickler repository with the setup command:

stickler setup /var/stickler

This will create a stickler repository in /var/stickler, assuming you have the correct permissions to create that directory. Now you need to populate it with some gems. You can add and remove both gems and sources. The best way to do this is to change into stickler repository and run other commands.

cd /var/stickler
stickler add gem ramaze

This will prompt you for the gem version requirement for 'ramaze' and then download ramaze and everything it depends upon into the stickler repository.

You can also add your own upstream gem repository to stickler. This enables you to merge multiple upstream repositories into a single repository.

stickler add source http://gems.example.com/

Now you can add gems to your stickler repository that are found in the default upstream repository (rubygems) and your custom upstream repositories. It will even resolve dependencies between them.

When you are ready to distribute the gems found in your stickler repository, edit the 'stickler.yml' file found in the root of your repository and set the 'downstream_source' configuration variable. This is the location that your installed rubygems clients will contact to download gems. Most likely something like 'gems.example.com' or whatever your company / organization name is.

Then run the index command to generate the distributable gem repository.

stickler generate index

This generates a directory structure under the 'dist' directory that you can rsync to a web server or otherwise push to some location for your managed machines to contact for gems.

If you want to setup a system gem source configuration, use the 'generate sysconfig' command to generate the text file you can put on your systems so that they contact the 'downstream_source' as the default gem server. The command informs you of where to install the file.

stickler generate sysconfig

CREDITS

LICENSE

Copyright © 2008 Jeremy Hinegardner

All rights reserved. Licensed under the same terms as Ruby. No warranty is provided. See LICENSE and COPYING for details.

Something went wrong with that request. Please try again.