Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/codekitchen/rubygems-s3
https://github.com/codekitchen/rubygems-s3
Last synced: 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/codekitchen/rubygems-s3
- Owner: codekitchen
- License: mit
- Created: 2014-03-18T19:03:12.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2016-08-23T15:39:16.000Z (over 8 years ago)
- Last Synced: 2024-11-16T10:37:02.894Z (2 months ago)
- Language: Ruby
- Size: 2.93 KB
- Stars: 1
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Rubygems::S3
This rubygems plugin allows you to add private S3 rubygems repos as
sources in your gemrc file.## Deprecated
There is no need to use this plugin anymore, except with older versions of rubygems, as this functionality has been merged into rubygems itself. See https://github.com/rubygems/rubygems/pull/856
## Installation
You'll need a recent version of rubygems.
gem update --system
gem install rubygems-s3## Usage
gem sources --add s3://key:secret@my-bucket/path-to-gems/
Then just `gem install my-private-gem`.
Alternatively you can omit the key and secret, but you'll need to get
AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY into your environment some
other way if you do that. It's strongly recommended that you create an
IAM user specifically for this purpose, with access only to the list and
get actions on the relevant s3 bucket.Right now I'm publishing gems to our S3 bucket using s3fs and `gem
generate_index`, eventually I'd like to create better tooling.## Implementation Notes
Currently this works by monkey patching the `Gem::RemoteFetcher` class,
as it's not yet fully plugin-able. I'm working to improve that, at which
time the implementation will become cleaner, but usage will remain the
same.## Contributing
1. Fork it ( http://github.com/codekitchen/rubygems-s3/fork )
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create new Pull Request