https://github.com/parallax/fcpm-ruby
https://github.com/parallax/fcpm-ruby
Last synced: 5 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/parallax/fcpm-ruby
- Owner: parallax
- Created: 2015-07-20T17:06:17.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2015-07-31T15:21:14.000Z (over 10 years ago)
- Last Synced: 2025-08-17T18:44:06.070Z (5 months ago)
- Language: Ruby
- Size: 137 KB
- Stars: 1
- Watchers: 6
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
fcpm-ruby
=========
fcpm-ruby is a wrapper for bundler which caches precompiled versions of
gems. The goal is to provide a faster deployment experience.
Usage
-----
Invoke `bin/fcpm-ruby` as if it were bundler:
bin/fcpm-ruby install
For even faster installs, tell `fcpm-ruby` to use multiple jobs:
bin/fcpm-ruby install --jobs=8
Configuration
-------------
A `.fcpm-ruby-config` file can be used to tell `fcpm-ruby` not only where
to find precompiled gems, but also where to put them if they don't already
exist and need to be rebuilt.
The (YAML-formatted) config file supports these keys:
* `source` -- a URI telling where to look for precompiled gems. This currently
supports "http://" and "file:" URIs.
* `host` -- a URI telling where gems should be stored if they need to be rebuilt.
This supports "scp://" and "file:" URIs. (See also `key`, below.)
* `key` -- this is a path to a local SSH key to be used when uploading newly
built gems via SCP. (See `host`, above.)
A sample config that hosts prebuilt gems locally might might look like this:
source: file:/path/to/precompiled/gems
host: file:/path/to/precompiled/gems
On the other hand, a config that hosts prebuilt gems on a different server
might look like this:
source: http://example.com/path
host: scp://user@example.com/u/sites/path
key: /local/path/to/ssh_key
In this case, given a gem like 'rails-5.0.0' on Mac OSX, `fcpm-ruby` will
first look for it at `http://example.com/path/rails-5.0.0-x86_64-darwin-14.tar.gz`.
If found, it is downloaded and installed. Otherwise, the gem itself is downloaded
from a gem server, built locally, and then uploaded to `host` with whatever
credentials that includes, and using the `key` to authenticate with the server.
Authors
-------
Jamis Buck