Git Product home page Git Product logo

stickler's Introduction

Stickler

  • Homepage
  • GitHub
  • email jeremy at copiousfreetime dot org
  • git clone git://github.com/copiousfreetime/stickler.git

DESCRIPTION

Stickler is a tool to organize and maintain an internal gem repository. Primarily, you would want to use Stickler if:

  1. You have proprietary gems that you want to have available via a gem server so you may gem install them.
  2. You would like to have a local mirror of third party gems from either http://rubygems.org or some other gem server.
  3. You want both (1) and (2) in the same server.

INSTALLATION

Installing stickler may be done via the standard gem installation

gem install stickler

Or downloaded from http://github.com/copiousfreetime/stickler/downloads

USAGE

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.

Start up a standalone stickler server

% mkdir -p /tmp/stickler-test
% stickler-server start --daemonize /tmp/stickler-test

Set some sane defaults

% 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

Take a few gems and push them to the server

% 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

Mirror a gem from upstream

% 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

Look at all the gems installed in your stickler server

Open your browser to http://localhost:6789

% launchy http://localhost:6789

Install a gem from your new stickler gem server

% gem install hitimes --source http://localhost:6789/

Configure your servers to globally use your internal stickler gem server

% 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

See Also

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)
>

DEVELOPMENT

If you want to do development on stickler, please see CONTRIBUTING.md

CREDITS

LICENSE

Copyright (C) 2015 Jeremy Hinegardner MIT License, See LICENSE for details.

stickler's People

Contributors

copiousfreetime avatar johnbellone avatar latentflip avatar shenil avatar ubermajestix avatar urfolomeus avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.