{"id":16061946,"url":"https://github.com/rossta/supporting_cast","last_synced_at":"2025-02-23T01:15:14.708Z","repository":{"id":5970925,"uuid":"7192588","full_name":"rossta/supporting_cast","owner":"rossta","description":"Opinionated generators for common Rails app services, i.e., the supporting cast","archived":false,"fork":false,"pushed_at":"2012-12-16T19:25:41.000Z","size":136,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-15T10:57:03.011Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rossta.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2012-12-16T16:42:11.000Z","updated_at":"2013-10-20T03:55:39.000Z","dependencies_parsed_at":"2022-08-30T02:31:53.169Z","dependency_job_id":null,"html_url":"https://github.com/rossta/supporting_cast","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rossta%2Fsupporting_cast","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rossta%2Fsupporting_cast/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rossta%2Fsupporting_cast/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rossta%2Fsupporting_cast/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rossta","download_url":"https://codeload.github.com/rossta/supporting_cast/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240254293,"owners_count":19772393,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-09T04:21:05.749Z","updated_at":"2025-02-23T01:15:14.678Z","avatar_url":"https://github.com/rossta.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SupportingCast\n\nOpinionated generators for common Rails backing services, e.g. Redis, nginx, sidekiq, nginx, i.e., the supporting cast.\n\n## Installation\n\nAdd this line to your application's Gemfile:\n\n    gem 'supporting_cast', :group =\u003e :development\n\nAnd then execute:\n\n    $ bundle\n\nOr install it yourself as:\n\n    $ gem install supporting_cast\n\n## Usage\n\n    $ rails g supporting_cast:config          # Bootstrap the whole supporting cast\n\n    $ rails g supporting_cast:\u003cname\u003e_config   # Generate config for given cast member\n\n## Configurations\n\nSupportingCast is intended to make it easier to get backing services up and running for Rails local (development and test) environments. A guiding principle, largely inspired by the [12 Factor App](http://www.12factor.net/), is to minimize divergence between local and production environments.\n\n### Redis\n\nGenerates `config/redis.yml` for specifying the interface to your Rails app and separate redis-server conf files in `config/redis` for your development and test environments.\n\nAs Francis Hwang said in his post, [Testing Rails Against a Running Redis Instance](http://fhwang.net/2010/09/23/Testing-Rails-against-a-running-Redis-instance-and-doing-it-with-Hydra-to-boot):\n\n\u003e If your Rails app uses Redis, there are basically three approaches you can take for when the code under test hits Redis.\n\u003e\n\u003e 1. Mock Redis\n\u003e 2. Stub Redis\n\u003e 3. Stop messing around and just use Redis\n\nSupportingCast will generate configurations for running separate Redis instances for development and test. Paired with the foreman configuration, it's dead simple to start/stop multiple Redis instances for local environments. You could [use Redis namespaces to separate environments](http://dev.af83.com/2012/07/31/should-we-namespace-redis.html), but why mess around?\n\n### Nginx\n\nGenerate an app-specific starter nginx configuration in `config/nginx` with typical defaults with optional self-signed SSL certificate.\n\n### Unicorn\n\nGenerate a starter config file for configuring a unicorn server at `conf/unicorn/unicorn.rb`.\n\n### Sidekiq\n\nAdds [sidekiq](https://github.com/mperham/sidekiq) configuration at `config/sidekiq.yml`.\n\n### Elasticsearch\n\nFor [elasticsearch](http://www.elasticsearch.org/), generates a `config/elasticsearch.yml` files for specifying the interface to your Rails app and config files for running elasticsearch server for development and test environments.\n\n### Sunspot\n\nGenerates `config/sunspot.yml` for enabling your app for [solr](http://lucene.apache.org/solr/)-powered search via [sunspot](http://sunspot.github.com/).\n\n\n## Contributing\n\n1. Fork it\n2. Create your feature branch (`git checkout -b my-new-feature`)\n3. Commit your changes (`git commit -am 'Add some feature'`)\n4. Push to the branch (`git push origin my-new-feature`)\n5. Create new Pull Request\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frossta%2Fsupporting_cast","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frossta%2Fsupporting_cast","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frossta%2Fsupporting_cast/lists"}