0
-Stickler is a tool to organize and maintain an internal gem distribution
server.
0
+Stickler is a tool to organize and maintain an internal gem distribution
.
0
At times it is useful to have complete control over the availability of the gems
0
for you testing, staging and production environments. In these cases you
0
@@ -14,29 +14,65 @@ probably do not want to accidentally type 'gem update' and get a new untested
0
version of a gem installed on your machines. This is where Stickler helps.
0
Configure stickler with the the names and versions of the gems you require for
0
-your deployment and it will organize and setup a gem server to serve up only
0
+your deployment and it will organize and setup everything that is necessary for
0
+a standard web server to function as your internal gem distribution server.
0
-
sudo gem install stickler
0
Or Get it from RubyForge[http://rubyforge.org/projects/copiousfreetime/]
0
or github[http://github.com/copiousfreetime/stickler/tree/master]
0
-* Serve up a custom collection of gems for your own use.
0
-* Generation of a custom 'sources' gem to have your rubygems installations point
0
- to your custom gem server.
0
-* Tracking of the gems you care about and notification when a new version of those
0
- are released on rubyforge.
0
-* Integrates with your internal build system so your internal gems can be
0
- deployed to the stickler gem server
0
+Using stickler is fairly simple. First install it, then create a new stickler
0
+repository with the setup command:
0
+ stickler setup /var/stickler
0
+This will create a stickler repository in /var/stickler, assuming you have the
0
+correct permissions to create that directory. Now you need to populate it with
0
+some gems. You can add and remove both gems and sources. The best way to do
0
+this is to change into stickler repository and run other commands.
0
+ stickler add gem ramaze
0
+This will prompt you for the gem version requirement for 'ramaze' and then
0
+download ramaze and everything it depends upon into the stickler repository.
0
+You can also add your own upstream gem repository to stickler. This enables you
0
+to merge multiple upstream repositories into a single repository.
0
+ stickler add source http://gems.example.com/
0
+Now you can add gems to your stickler repository that are found in the default
0
+upstream repository (rubygems) and your custom upstream repositories. It will
0
+even resolve dependencies between them.
0
+When you are ready to distribute the gems found in your stickler repository,
0
+edit the 'stickler.yml' file found in the root of your repository and set the
0
+'downstream_source' configuration variable. This is the location that your
0
+installed rubygems clients will contact to download gems. Most likely something
0
+like 'http://gems.example.com' or whatever your company / organization name is.
0
+Then run the index command to generate the distributable gem repository.
0
+ stickler generate index
0
+This generates a directory structure under the 'dist' directory that you can
0
+rsync to a web server or otherwise push to some location for your managed
0
+machines to contact for gems.
0
+If you want to setup a system gem source configuration, use the 'generate
0
+sysconfig' command to generate the text file you can put on your systems so that
0
+they contact the 'downstream_source' as the default gem server. The command
0
+informs you of where to install the file.
0
+ stickler generate sysconfig
0
@@ -45,5 +81,6 @@ or github[http://github.com/copiousfreetime/stickler/tree/master]
0
Copyright (c) 2008 Jeremy Hinegardner
0
All rights reserved. Licensed under the same terms as Ruby. No warranty is
0
provided. See LICENSE and COPYING for details.
Comments
No one has commented yet.